P O M I A RY • A U T O M AT Y K A • R O B O T Y K A
49 55
Jacek Korytkowski
Układ elektroniczny cyfrowego syntezatora konduktancji do symulacji dużych rezystancji Ryszard Kopka, Wiesław Tarczyński
Influence of the Operation Conditions on the Supercapacitors Reliability Parameters Ewelina Chołodowicz, Przemysław Orłowski
Sterowanie przepływem towarów w magazynie z wykorzystaniem predyktora Smitha
61
Maciej Węgierek, Bartosz Świstak, Tomasz Winiarski
67
Jacek Dunaj
Modularne środowisko do rywalizacji robotów śledzących linię
Rozwiązania programowe w sterowaniu zaawansowanymi aplikacjami wizyjnymi
PAR POMIARY • AUTOMATYKA • ROBOTYKA 3/2015 (217)
41
PAR kwartalnik naukowo-techniczny
3/2015 ISSN 1427-9126 Indeks 339512
Cena 25,00 zł w tym 5% VAT
www.par.pl
W numerze:
3 5 15 25
Od Redakcji Alicja Cegielska, Mariusz Olszewski
Nieinwazyjny interfejs mózg–komputer do zastosowań technicznych Magdalena Górska, Mariusz Olszewski
Interfejs mózg–komputer w zadaniu sterowania robotem mobilnym Piotr Bakun, Oskar Długoński, Robert Piotrowski
Zaawansowane metody sterowania kaskadowym układem zbiorników
31
Igor P. Kurytnik, Marcin Tomasik, Stanisław Lis
37
Aleksandra Kłos-Witkowska
Pomiar objętościowego natężenia przepływu mleka
Biosensory
Ponadto: Informacje dla Autorów – 83 | European Space Agency – historia, misja, udział Polski – 87 | Wspomnienie – Profesor Mieczysław Adam Brdyś – 91 | AutoCAD 2016/ LT2016/360+ – 94 | Autodesk Inventor Professional 2016PL/2016+ /Fusion 360 – 95 | Introduction to Quantum Metrology. Quantum Standards and Instrumentation – 96 | Kalendarium – 97 | XIX Międzynarodowa Szkoła Komputerowego Wspomagania Projektowania, Wytwarzania i Eksploatacji – 98 | XIX Konferencja Automatyków – Rytro 2015 – 99 | VIII Ogólnopolski Konkurs MŁODZI INNOWACYJNI – 100 | Centrum Szkoleniowe Turck – wsparciem dla uczelni i studentów – 101
Rada Naukowa
Rok 19 (2015) Nr 3(217) ISSN 1427-9126, Indeks 339512
Redaktor naczelny
prof. Jan Awrejcewicz Katedra Automatyki, Biomechaniki i Mechatroniki, Politechnika Łódzka prof. Milan Dado University of Žilina (Słowacja)
dr inż. Jan Jabłkowski
prof. Tadeusz Glinka Instytut Elektrotechniki i Informatyki, Politechnika Śląska
Zastępca redaktora naczelnego
prof. Evangelos V. Hristoforou National Technical University of Athens (Grecja)
dr inż. Małgorzata Kaliczyńska
Zespół redakcyjny dr inż. Jerzy Borzymiński prof. Wojciech Grega – automatyka prof. Krzysztof Janiszowski dr inż. Małgorzata Kaliczyńska – redaktor merytoryczny/statystyczny mgr Anna Ładan – redaktor językowy prof. Mateusz Turkowski – metrologia prof. Cezary Zieliński – robotyka
Skład i redakcja techniczna Ewa Markowska
dr Oleg Ivlev University of Bremen (Niemcy) prof. Stanisław Kaczanowski Przemysłowy Instytut Automatyki i Pomiarów PIAP, Warszawa prof. Larysa A. Koshevaja Narodowy Uniwersytet Lotnictwa, Kiev (Ukraina) prof. Igor P. Kurytnik Akademia Techniczno-Humanistyczna, Bielsko-Biała prof. J. Tenreiro Machado Polytechnic Institute of Porto (Portugalia) prof. Jacek Malec Lund University (Szwecja)
Druk Zakłady Graficzne Taurus Roszkowscy Sp. z o.o. Nakład 500 egz.
Wydawca Przemysłowy Instytut Automatyki i Pomiarów PIAP Al. Jerozolimskie 202, 02-486 Warszawa
Kontakt Redakcja kwartalnika naukowo-technicznego Pomiary Automatyka Robotyka Al. Jerozolimskie 202, 02-486 Warszawa tel. 22 874 01 46 nauka@par.pl www.par.pl
prof. Andrzej Masłowski Wydział Inżynierii Produkcji, Politechnika Warszawska prof. Tadeusz Missala Przemysłowy Instytut Automatyki i Pomiarów PIAP, Warszawa dr Vassilis C. Moulianitis University of Patras (Grecja) prof. Zdzisław Mrugalski Instytut Mechanizacji, Budownictwa i Górnictwa Skalnego, Warszawa prof. Joanicjusz Nazarko Wydział Zarządzania, Politechnika Białostocka prof. Serhiy Prokhorenko „Lviv Polytechnic” National University (Ukraina) prof. Eugeniusz Ratajczyk Wydział Zarządzania, Wyższa Szkoła Ekologii i Zarządzania w Warszawie prof. Jerzy Sąsiadek Carleton University (Kanada)
Pomiary Automatyka Robotyka jest czasopismem naukowo-technicznym obecnym na rynku od 1997 r. Przez 18 lat ukazywało się jako miesięcznik. Aktualnie wydawany kwartalnik zawiera artykuły recenzowane, prezentujące wyniki teoretyczne i praktyczne prowadzonych prac naukowo-badawczych w zakresie szeroko rozumianej automatyki, robotyki i metrologii.
Kwartalnik naukowo-techniczny Pomiary Automatyka Robotyka jest indeksowany w bazach BAZTECH, Google Scholar oraz INDEX COPERNICUS (IC 3,22), a także w bazie naukowych i branżowych polskich czasopism elektronicznych ARIANTA. Punktacja MNiSW za publikacje naukowe wynosi 4 pkt (poz. 1618). Przyłączając się do realizacji idei Otwartej Nauki, udostępniamy bezpłatnie wszystkie artykuły naukowe publikowane w kwartalniku naukowo-technicznym Pomiary Automatyka Robotyka. Wersją pierwotną (referencyjną) jest wersja papierowa. Udostępniamy też aplikację PAR DIGITAL – wersję kwartalnika na urządzenia przenośne.
prof. Rossi Setchi Cardiff University (Wielka Brytania) prof. Waldemar Skomudek Wydział Inżynierii Produkcji i Logistyki, Politechnika Opolska dr Dragan Stokic ATB – Institute for Applied Systems Technology Bremen GmbH (Niemcy) prof. Eugeniusz Świtoński Wydział Mechaniczny Technologiczny, Politechnika Śląska prof. Peter Švec Slovak Academy of Sciences (Słowacja) prof. Krzysztof Tchoń Instytut Informatyki, Automatyki i Robotyki, Politechnika Wrocławska prof. Wojciech Włodarski RMIT University, Melbourne (Australia) prof. Eugenij T. Volodarsky „Kyiv Polytechnic” National University (Ukraina)
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015
Spis treści 3
Od Redakcji
5
Alicja Cegielska, Mariusz Olszewski Nieinwazyjny interfejs mózg–komputer do zastosowań technicznych Noninvasive brain–computer interfaces for technical applications
15
Magdalena Górska, Mariusz Olszewski Interfejs mózg–komputer w zadaniu sterowania robotem mobilnym Brain–computer interface in the task of mobile robot control
25
Piotr Bakun, Oskar Długoński, Robert Piotrowski Zaawansowane metody sterowania kaskadowym układem zbiorników Advances Control Systems of Cascade Tanks
31
Igor P. Kurytnik, Marcin Tomasik, Stanisław Lis Pomiar objętościowego natężenia przepływu mleka The measurement of volumetric flow rate milk
37 Aleksandra Kłos-Witkowska Biosensory Biosensors 41
Jacek Korytkowski Układ elektroniczny cyfrowego syntezatora konduktancji do symulacji dużych rezystancji The electronic circuit for digital controlled simulation of large worth resistances
49 Ryszard Kopka, Wiesław Tarczyński Influence of the Operation Conditions on the Supercapacitors Reliability Parameters Wpływ warunków pracy na parametry niezawodnościowe superkondensatorów 55 61 67
Ewelina Chołodowicz, Przemysław Orłowski Sterowanie przepływem towarów w magazynie z wykorzystaniem predyktora Smitha Inventory foods flow control system using Smith predictor Maciej Węgierek, Bartosz Świstak, Tomasz Winiarski Modularne środowisko do rywalizacji robotów śledzących linię Modularized environment for Line Follower robots Jacek Dunaj Rozwiązania programowe w sterowaniu zaawansowanymi aplikacjami wizyjnymi Software Solutions in the Control Systems of Advanced Vision Applications
83
Informacje dla Autorów
87
Organizacje i stowarzyszenia European Space Agency
91
Wspomnienie Profesor Mieczysław Adam Brdyś
94 Polecane książki AutoCAD 2016/LT2016/360+. Kurs projektowania parametrycznego i nieparametrycznego 2D i 3D – prof. dr hab. inż. Andrzej Jaskulski 95
Polecane książki Autodesk Inventor Professional 2016PL/2016 /Fusion 360. Metodyka projektowania – prof. dr hab. inż. Andrzej Jaskulski
1
SPIS TREŚCI
96 Polecane książki Introduction to Quantum Metrology. Quantum Standards and Instrumentation – prof. dr hab. inż. Waldemar Nawrocki 97
Kalendarium
98 Konferencje | Relacja XIX Międzynarodowa Szkoła Komputerowego Wspomagania Projektowania, Wytwarzania i Eksploatacji 99 Konferencje | Relacja XIX Konferencja Automatyków – Rytro 2015 100 Wydarzenia | Konkurs VIII Ogólnopolski Konkurs Młodzi Innowacyjni 101 Szkolenia Centrum Szkoleniowe Turck – wsparciem dla uczelni i studentów
2
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
OD REDAKCJI
Drodzy Państwo, Przed Państwem kolejny, trzeci już numer kwartalnika Pomiary Automatyka Robotyka. Mimo okresu wakacyjnego, czas ten nie był dla nas czasem wypoczynku. Prace nad bieżącym wydaniem przebiegały równolegle z przygotowywaniem danych do systemu POL-index. Jak większość redakcji czasopism recenzowanych, szczególnie tych z listy B Ministerstwa Nauki i Szkolnictwa Wyższego, jesteśmy zobligowani do wprowadzenia danych o publikacjach z lat 2009–2014. W naszym przypadku to blisko 800 artykułów. Planowane jest, że na podstawie dostarczonych przez nas danych, zostanie obliczony Polski Współczynnik Wpływu, trochę wzorowany na współczynniku Impact Factor. Dlatego bardzo prosimy o poprawne cytowanie artykułów zamieszczonych w naszym kwartalniku, zgodnie ze wskazówkami zawartymi w informacjach dla Autorów. Za chwilę rozpocznie się rok akademicki, stąd informacje o szkoleniach, podręcznikach – to ukłon w stronę nauczycieli akademickich i studentów, którzy stanowią liczną grupę naszych Czytelników. W imieniu Wydawcy – Przemysłowego Instytutu Automatyki i Pomiarów PIAP w Warszawie – gorąco zapraszam do lektury najnowszego numeru. Redaktor naczelny kwartalnika Pomiary Automatyka Robotyka dr inż. Jan Jabłkowski
3
4
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015, 5–14, DOI: 10.14313/PAR_217/5
Nieinwazyjny interfejs mózg–komputer do zastosowań technicznych Alicja Cegielska, Mariusz Olszewski
Politechnika Warszawska, Wydział Mechatroniki, Instytut Automatyki i Robotyki, ul. św. Andrzeja Boboli 8, 02-525 Warszawa
Streszczenie: Celem opracowania jest zwięzłe opisanie zasad działania interfejsu mózg–komputer i przedstawienie jego możliwych zastosowań technicznych. Jest to współcześnie intensywnie rozwijany system mechatroniczny mierzący aktywność mózgu i generujący na jej podstawie sygnały sterujące dla urządzeń i maszyn. W artykule zawarto podstawowe informacje na temat ludzkiego mózgu, metod pomiaru jego aktywności, przetwarzania i klasyfikacji sygnałów. Przedstawiono różne możliwości realizacji interfejsu i jego zastosowania techniczne. Słowa kluczowe: interfejs mózg–komputer, elektroencefalografia, sterowanie za pomocą ludzkiego mózgu, aktywność mózgu
1. Wprowadzenie Interfejs mózg–komputer (Brain-Computer Interface, BCI), a przez komputer także podłączenie dowolnego urządzenia, maszyny lub systemu mechatronicznego, jest fascynującym już od kilkunastu lat rozwiązaniem. Ma ono zapewnić sterowanie za pomocą ludzkiego mózgu, bez aktywowania aktonów mięśniowych człowieka, wspomnianymi urządzeniami, maszynami i systemami (rys. 1). Szczególnie pasjonująca, ale dziś jeszcze ciągle przyszłościowa, wydaje się możliwość zastosowania BCI jako głównego lub pomocniczego sterownika we wszystkich obszarach robotyki – od przemysłowej, przez mobilną, medyczną, aż do antropomorficznej o częściowej autonomii, wspomagającej osoby chore, kalekie lub niedołężne [12]. Powstał więc pomysł, aby zebrać możliwie wszystkie aktualne i dostępne informacje konieczne do zrozumienia zasady działania BCI, opisu struktur i działania mózgu, metod akwizycji i przetwarzania sygnałów oraz ich klasyfikacji i definicji [43, 74]. Zadaniu temu jest poświęcony niniejszy artykuł. W jego przygotowaniu niezwykle owocną okazała się współpraca z Instytutem Biologii Doświadczalnej PAN, prowadzącym już od kilkudziesięciu lat zaawansowane prace badawcze ludzkiego mózgu i związanych z nim neuromechanizmów. Współpraca ta pozwoliła sięgnąć po liczne publikacje oraz wykłady i kontakty z pracownikami wspomnianej jednostki [25, 75, 76]. Zakres opracowania objął zwięzłe opisanie podstaw funkcjonowania mózgu i interfejsu nieinwazyjnego, w tym pomiaru aktywności mózgu, wykorzystania, przetwarzania i klasyfikacji sygnałów z elektroencefalografu (Electroencephalograph, EEG), interfejsu synchronicznego/asynchronicznego oraz aktywnego/
Autor korespondujący: Alicja Cegielska, a.cegielska@mchtr.pw.edu.pl Artykuł recenzowany nadesłany 15.07.2015 r., przyjęty do druku 24.08.2015 r. Zezwala się na korzystanie z artykułu na warunkach licencji Creative Commons Uznanie autorstwa 3.0
Rys. 1. BCI w zadaniu sterowania aktywną ortezą [festo.com/bionic] Fig. 1. BCI for active orthosis control
reaktywnego/pasywnego, samouczenia, modyfikacji i zastosowań BCI. Dla ograniczenia penetrowanego obszaru pominięto rozwiązania i metody inwazyjne budowy BCI.
2. Struktura i aktywność mózgu Neuron jest komórką, której podstawową funkcją jest przekazywanie informacji zakodowanych w postaci impulsów nerwowych. Wszystkie neurony składają się z ciała komórkowego, aksonu i dendrytów. Różnią się między sobą pod względem morfologicznym i czynnościowym. Istnieje wiele podziałów i typów komórek nerwowych, można wyróżnić między innymi: −−komórki Golgi typu I (o długich aksonach), np: −−komórki piramidowe (z trójkątnym ciałem komórki), −−komórki Purkinjego (z rozbudowanym drzewem dendrytycznym); −−komórki Golgi typu II (o krótkich aksonach). Neurony kory mózgowej są uporządkowane w obszary, które u każdego osobnika pełnią te same funkcje (np. sygnały układu mięśniowego są generowane w pierwszorzędowej korze ruchowej, rys. 2). Każda część układu mięśniowo-czuciowego jest reprezentowana w korze nowej ruchowej i czuciowej, w przybliżeniu z zachowaniem topografii podanej w [9, 67] (rys. 3). Te obszary funkcjonalne w pewnym stopniu różnią się przestrzenną zajęto-
5
Nieinwazyjny interfejs mózg–komputer do zastosowań technicznych
ścią kory mózgowej i nie jest możliwe opracowanie uniwersalnego schematu podziału ludzkiego mózgu [25, 65, 76]. Ze względu na właściwości błony komórkowej, wnętrze neuronu ma ładunek ujemny w stosunku do otoczenia. Jest on nazywany potencjałem spoczynkowym i wynosi średnio –70 mV. Na skutek działania bodźca (np. pobudzenia synaps na dendrytach neuronu) może nastąpić depolaryzacja błony komórkowej. Jeśli narastający potencjał przekroczy wartość progową, jony sodu, wpływając do komórki pod wpływem różnicy potencjałów elektrycznych, spowodują zmianę polaryzacji błony, trwającą w zależności od komórki od 0,5 ms do 2 ms, nazywaną potencjałem czynnościowym (lub iglicowym) rzędu +35 mV. Po wystąpieniu potencjału czynnościowego następuje repolaryzacja błony do wartości spoczynkowej. Dyfundujące jony powodują depolaryzację sąsiedniego odcinka błony aksonu powyżej progu pobudzenia i generują potencjał w nowym miejscu (rys. 4). Takie przesuwanie się fali depolaryzacji nazywane jest impulsem nerwowym i odbywa się bez zmniejszania jego amplitudy. Częstotliwość wytwarzanych przez komórkę potencjałów czynnościowych wzrasta wraz ze wzrostem natężenia bodźca [70, 75]. W analizie elektrycznych sygnałów mózgowych rozpatrywane są dwa parametry – amplituda i częstotliwość. Przy podziale ze względu na częstotliwość wyróżnia się pasma, które są związane z określonymi stanami lub bodźcami. Nie można precyzyjnie określić ich granic ani funkcji, ponieważ silnie zależą od cech osobniczych, a wiele aspektów działania mózgu jest nadal nieznanych. Wyróżnia się następujące pasma [3, 5, 33, 66]: −−pasmo alfa – u około ¾ wszystkich ludzi oznacza relaks, obniżoną czujność i brak procesów kognitywnych (np. obliczenia matematyczne); są to rytmiczne zmiany potencjału elektrycznego o stosunkowo dużej amplitudzie i częstotliwości 8–12 Hz; można zaobserwować zwiększenie amplitudy podczas zmęczenia lub przy zamkniętych oczach; −−pasmo beta – zwykle występuje podczas stanu czujności, zastępuje pasmo alfa po pojawieniu się procesów aktywnych; zmiany potencjału mają mniejszą amplitudę i większą częstotliwość 18–30 Hz; −−pasmo gamma – związane z łączeniem różnych bodźców w logiczną całość (np. dostrzeżenie psa dalmatyńczyka na czarno-białym tle); są to zmiany potencjału o częstotliwości 30–100 Hz; −−pasmo theta – związane z brakiem czujności lub uwagą i procesami aktywnymi; są to częstotliwości 4–8 Hz; −−pasmo delta – związane ze snem u osób zdrowych lub ze stanami patologicznymi; zakres częstotliwości 0,5–4 Hz; −−pasmo mu – wykorzystywane podczas analizy sygnałów mózgowych związanych z wykonywaniem lub wyobrażaniem ruchu; odpowiada częstotliwościom 8–12 Hz. Pasma mu i beta są związane z żądaniem ruchu lub wyobrażeniem ruchu. Oba pasma są lokalnie zmniejszane w regionie odpowiadającym danej części układu mięśniowego, niezależnie od tego, czy ruch jest aktywny, pasywny czy też jest to odruch. Takie osłabienie aktywności jest nazywane desynchronizacją wywołaną [9].
Rys. 2. Obszary ruchowe i sensoryczne kory mózgowej [Blausen.com, “Blausen gallery 2014”, Wikiversity Journal of Medicine] Fig. 2. Motor and sensory regions of the cerebral cortex
Rys. 3. Przekrój kory ruchowej z przyporządkowanymi obszarami układu mięśniowego człowieka [25] Fig. 3. The cross-section of the motor cortex with associated parts of the human muscular system
3. Podstawowe zasady działania interfejsu mózg–komputer 3.1. Działanie BCI
Działanie interfejsu mózg–komputer może zostać przedstawione jako cykl (rys. 5), w którym występują kolejno: −−przedstawienie zadania lub podjęcie działania przez użytkownika, −−akwizycja sygnałów mózgowych, −−przetwarzanie wstępne (w tym usuwanie artefaktów), −−wyodrębnianie cech charakterystycznych sygnału,
Rys. 4. Zasięg kolaterali (rozgałęzień) aksonu komórki nerwowej [75] Fig. 4.The range of collaterals (branches) of a nerve cells axon
6
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Alicja Cegielska, Mariusz Olszewski
−−rezonans magnetyczny (Magnetic Resonance Imaging, MRI), −−spektroskopia w bliskiej podczerwieni (Near Infrared Spectroscopy, NIRS). Nie zostało określone, które metody pozwolą osiągnąć większą dokładność i prędkość komunikacji, jednak do 2008 r. większą wydajność miały interfejsy inwazyjne [16, 43].
3.3. Pomiar aktywności mózgu metodą EEG
Rys. 5. Jedna z możliwości przedstawienia zasady działania interfejsu mózg–komputer [73] Fig. 5. One of the possible representations of the principles of braincomputer interface
−−klasyfikacja i obliczanie sygnału wyjściowego, −−prezentacja wyników przestawionego zadania. Sposób przedstawienia sygnału zwrotnego od realizowanego zadania nie ma wpływu na jakość komunikacji. Istnieją aplikacje abstrakcyjne (np. przesuwanie krzyżyka do wskazanego na monitorze obszaru) i realistyczne (np. symulacja poruszającej się ręki) [50, 73]. Interfejsy mózg–komputer można projektować jako systemy: −−synchroniczne, w których interfejs wymaga odpowiedzi użytkownika w zdefiniowanym czasie, −−asynchroniczne, które czekają na pojawienie się charakterystycznej aktywności. Interfejs asynchroniczny pozwala użytkownikowi na zamierzone przerwy w komunikacji bez spadku wydajności, wyłączając się, kiedy wiarygodność pomiaru jest zbyt mała. Prędkość komunikacji interfejsu synchronicznego jest ograniczona, natomiast interfejs asynchroniczny może dopasowywać prędkość działania do stanu użytkownika. Z tych powodów efektywność komunikacji interfejsu asynchronicznego jest większa [1, 9, 37]. Koniecznym elementem jest uczenie użytkownika BCI trwające od kilkunastu minut nawet do kilku miesięcy. Czas treningu zależy głównie od wybranej cechy charakterystycznej sygnału i metody treningu. Klasycznym podejściem jest uczenie użytkownika świadomego manipulowania daną cechą z wykorzystaniem symulatorów. Ze względu na niedokładność umieszczenia elektrod, zmiany stanu użytkownika i ograniczoną znajomość map mózgu, przed rozpoczęciem pracy konieczne jest zebranie danych kalibracyjnych, od których zależy efektywność działania BCI. Następstwem czasochłonności procesu uczenia jest stosowanie coraz bardziej złożonych systemów samouczących. System określa parametry dla każdego użytkownika na podstawie danych kalibracyjnych, a następnie w sposób ciągły dopasowuje się do zmian stanu użytkownika wywołanych zmęczeniem, dziennymi wahaniami aktywności mózgu, czasochłonnością uczenia się i innymi czynnikami. Ze względu na łatwość adaptacji dużą przewagę zapewniają proste metody klasyfikacji sygnałów, takie jak klasyfikatory liniowe [9, 16, 32, 48, 62].
3.2. Metody akwizycji sygnałów mózgowych
Istnieją dwie grupy metod akwizycji sygnałów mózgowych: −−inwazyjne – wymagają umieszczenia elektrod bezpośrednio na powierzchni lub w mózgu, co wymaga interwencji chirurga i wiąże się z zagrożeniami (typowymi dla każdej operacji oraz możliwością uszkodzenia mózgu lub pozostawienia blizn); −−nieinwazyjne, np.: −−elektroencefalografia (EEG), −−magnetoencefalografia (Magnetoencephalography, MEG),
Najpopularniejszą metodą pomiaru aktywności mózgu dla nieinwazyjnego BCI jest badanie EEG, które mierzy aktywność elektryczną mózgu. EEG wymaga rejestrowania sygnałów rzędu µV na skórze głowy, co jest realizowane przez wzmacnianie sygnałów różnicowych elektrod znajdujących się w miejscach aktywnych i elektrody referencyjnej lub wartości średniej sygnałów pochodzących ze wszystkich elektrod. Elektrody są zazwyczaj umieszczane i nazywane zgodnie z międzynarodowym systemem 10-20 (rys. 6).
Rys. 6. Międzynarodowy system 10-20 rozmieszczenia elektrod, widok czaszki z góry: A – elektroda referencyjna, F – elektrody części czołowej (frontal), C – elektrody części centralnej (central), T – elektrody części skroniowej (temporal), P – elektrody części ciemieniowej (parietal), O – elektrody części potylicznej (occipital) [66] Fig. 6. International 10-20 electrode placement system, view from above: A – reference electrode, F – frontal electrodes, C – central electrodes, T – temporal electrodes, P – parietal electrodes, O – occipital elecrodes
Powszechnie rejestrowane są częstotliwości od niemal 0 Hz do 100 Hz, stosuje się filtry dolno-, środkowo- i górnoprzepustowe. EEG charakteryzuje się dużą rozdzielczością czasową, wystarczającą do zastosowań w BCI i małą rozdzielczością przestrzenną wymagającą obliczeniowego rozdzielenia sygnałów. Aparatura do badań w zastosowaniach technicznych jest lekka, przenośna i tania [29, 40, 66]. W większości systemów wykorzystywane są czepki i żel, które utrudniają komercyjne zastosowania BCI, np. w urządzeniach służących rozrywce. Wprowadzane są stopniowo aktywne i pasywne elektrody suche, których dokładność jest podobna lub lepsza niż tradycyjnych, wymagających żelu. Przy projektowaniu systemów z suchymi elektrodami największy nacisk kładzie się na łatwość zakładania, łatwe przenoszenie i bezprzewodowe łączenie [22, 23, 26].
4. Wybrane cechy charakterystyczne sygnałów mózgowych Od wybranej cechy charakterystycznej sygnałów mózgowych zależą metody przetwarzania sygnałów, możliwe zastosowania i ograniczenia oraz czas uczenia użytkownika (rys. 7). Niektóre z cech sygnałów EEG wywoływane są przez bodziec zewnętrzny, a inne są kontrolowane świadomie. Większość współczesnych BCI działa w oparciu o bodźce wzrokowe, wykorzystywane
7
Nieinwazyjny interfejs mózg–komputer do zastosowań technicznych
jest również wizualne sprzężenie zwrotne, niezależne jednak od ruchów gałek ocznych. Podejmowane były również próby projektowania BCI z bodźcami dźwiękowymi, jednak osiągały one mniejszą prędkość przesyłania informacji. Niedawno rozpoczęły się prace nad interfejsami hybrydowymi, które wykorzystują jednocześnie kilka cech charakterystycznych sygnałów mózgowych lub dodatkowo analizują również inne sygnały, np. tętno, aktywność mięśni, ruchy gałek ocznych lub sygnały zewnętrzne [16, 37, 39, 61, 68, 72].
Rys. 8. Typowy ekran tablicowy aplikacji do pisania; kolejne wiersze i kolumny są podświetlane, co powoduje generację potencjału P300 [3] Fig. 8. Typical table application screen for writing; each row and column flash subsequently, which triggers generation of P300 potential
Potentials, SSVEP) czyli potencjały wywoływane przez regularnie powtarzane bodźce wzrokowe o częstotliwości co najmniej 5–6 Hz. SSVEP są widoczne jako oscylacje w korze potylicznej, których częstotliwość jest taka sama jak bodźca. Osiągają największą amplitudę dla bodźców o częstotliwości około 15 Hz. Ta metoda pozwala na uzyskanie dokładności klasyfikacji sygnału do 92 % lub średniej prędkości rzędu 27 bitów na minutę, jeśli użytkownik skupia wzrok na bodźcu [3, 71]. BCI działające w oparciu o ruch lub wyobrażenie ruchu wykorzystują oscylacje w zapisie EEG z kory ruchowej i czuciowej, czyli desynchronizację/synchronizację wywołaną (Event-Related Desynchronization/Synchronization, ERD/ERS). Zamierzenie wykonania ruchu powoduje desynchronizację (zmniejszenie średniej amplitudy sygnału), widoczną szczególnie w pasmach mu i beta w lokalizacjach czołowych i ciemieniowych, która rozpoczyna się 2 s przed wykonaniem właściwego ruchu. Po wykonaniu ruchu rozpoczyna się synchronizacja i moc sygnału osiąga maksimum po około 600 ms. Po wykonaniu ruchu wzrasta też amplituda w paśmie gamma w pierwszorzędowej korze sensorycznej. Sygnały znacznie różnią się między użytkownikami pod względem wartości amplitudy i miejsca ich powstania. Trening pozwala użytkownikowi nauczyć się kontrolowania amplitud w tych pasmach bez wykonywania ruchu, co jest szczególnie istotne w przypadku zastosowań interfejsu w budowie aktuatorów ruchu mechanizmów urządzeń i maszyn. Metoda pozwala m.in. na poruszanie kursorem w trzech wymiarach lub sterowanie aktywnym urządzeniem ortotycznym (np. rys. 1). W aplikacji do pisania osiągnięto tą metodą prędkość kilku znaków na minutę [6, 16, 49, 57].
Rys. 7. Porównanie interfejsów działających w oparciu o wolne potencjały korowe (Slow Cortical Potentials, SCP), wywołaną synchronizację/desynchronizację (Event-Related Desynchronization/ Synchronization, ERD/ERS), potencjały wywołane (Event-Related Potentials, ERP) (szczególnie komponent P300) i wzrokowe potencjały wywołane stanu ustalonego (Steady-State Visual Evoked Potentials, SSVEP) pod względem czasu uczenia i szybkości przesyłania informacji [3] Fig. 7. The comparison of interfaces operating on the basis of SCP, ERS/ ERD, P300 potential and SSVEP in terms of learning time and information transfer rate
Wolne potencjały korowe (Slow Cortical Potentials, SCP) były jedną z pierwszych wykorzystywanych cech charakterystycznych sygnałów mózgowych. Są to świadomie generowane zmiany potencjału, niezwiązane z ruchem, o częstotliwości 1–2 Hz, trwające od 300 ms do kilku sekund. Przez trening ze sprzężeniem zwrotnym możliwe jest nauczenie się, w czasie od kilku tygodni do miesięcy, kontrolowania SCP, wyzwalając dodatnie lub ujemne przesunięcia wartości średniej amplitudy mierzonego sygnału. Analiza sygnału jest prosta, ponieważ polega na obliczaniu średniej amplitudy sygnału w kolejnych oknach czasowych, jednak możliwe do osiągnięcia prędkości komunikacji są niskie – wynoszą około 10 bitów na minutę. SCP są istotną cechą sygnałów mózgowych dla aplikacji neurofeedback w leczeniu określonych dolegliwości [6, 18, 30, 32, 36]. Często wykorzystywaną cechą są potencjały wywołane (Event-Related Potentials, ERP), będące odpowiedzią na bodźce poznawcze, czuciowe lub ruchowe. ERP składają się z dodatnich i ujemnych komponentów pojawiających się kolejno. Pierwszych 100 ms po wystąpieniu bodźca odpowiada procesom czuciowym. ERP mają częstotliwości 0,5–15 Hz. Zazwyczaj wybiera się komponent najłatwiejszy do odróżnienia lub największy, czyli P300. Pozytywny potencjał P300 pojawia się około 300–500 ms po wystąpieniu bodźca i osiąga wartość 2–5 μV. Wartości amplitudy i opóźnienie są cechami indywidualnymi i zależą także od rodzaju bodźca. Jest to aktualnie najczęściej stosowana cecha, pozwalająca osiągnąć szybkość komunikacji 20–30 bitów na minutę, a więc w połączeniu z odpowiednim oprogramowaniem 2–4 słów na minutę, przy czasie kalibracji zależnym od aplikacji. Aplikacja użytkownika może być tabelą, w której losowo podświetlane są kolejne wiersze lub kolumny [5, 18, 28, 71] (rys. 8). Często stosowaną cechą charakterystyczną są wzrokowe potencjały wywołane stanu ustalonego (Steady-State Visual Evoked
8
P
O
M
I
A
R
Y
•
A
U
T
O
M
5. Przetwarzanie sygnałów EEG Dobór metody przetwarzania sygnałów EEG w dużej mierze zależy od wybranej cechy charakterystycznej sygnału. Wykorzystywane są zarówno proste, jak i złożone procedury obliczeniowe. Wymagany jest czas obliczeń poniżej 40 ms, ponieważ sygnał wyjściowy musi być prezentowany w czasie rzeczywistym. Ze względu na niekorzystny stosunek sygnału do szumu, konieczne są procedury filtracyjne, w tym także statystyczne [3, 16, 55]. Wszystkie sygnały mózgowe są sygnałami niestacjonarnymi, co znacznie utrudnia obliczenia. Rozpoczęto prace nad przetwarzaniem sygnałów uwzględniającym jego niestacjonarność, jednak proponowane procedury nadal są zbyt skomplikowane i za mało efektywne, by je obecnie stosować [35, 49]. Pierwszym etapem przetwarzania sygnału jest zwykle filtracja dolnoprzepustowa sygnału analogowego. Potem następuje detekcja i usuwanie artefaktów, które mogą być efektem ruchów głową, szyją, oczami, aktywności serca, interferencji z siecią, szumów A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Alicja Cegielska, Mariusz Olszewski
od otaczających urządzeń elektrycznych, ruchów kabli lub szumów termicznych. Artefakty mogą być wykrywane metodami: wartości ekstremalnych, trendów liniowych, prawdopodobieństwa danych, filtrów spektralnych i separacji źródłowej (Blind Source Separation, BSS) [1, 17, 21, 45]. W interfejsach mózg–komputer stosowane są trzy rodzaje filtracji: −−czasowa, −−spektralna, −−oraz przestrzenna. Filtracja czasowa jest elementem często pomijanym w opisie, ponieważ jest implementowana wewnątrz gotowych funkcji. Rzadko stosowane są również transformacje falkowe [19]. Filtracja spektralna występuje w każdym BCI, ponieważ konieczne jest odcięcie częstotliwości niepotrzebnych lub nieodpowiednich dla jakości przetwarzania oraz dla użytkownika w konkretnych aplikacjach. Filtracja przestrzenna służy do przybliżonego wyznaczania źródeł sygnału. Zadanie to jest złożone ze względu na małą rozdzielczość przestrzenną współczesnych metod badania EEG, jednak szczególnie istotne przy wykorzystywaniu cech sygnałów ruchowych. W badaniach często stosowane są filtry Laplace’a ze względu na łatwość implementacji i niewielkie wymagania obliczeniowe. Inną popularną metodą jest wspólny wzorzec przestrzenny (Common Spatial Pattern, CSP), który jest bardziej skomplikowany obliczeniowo, jednak zapewnia lepsze efekty przetwarzania [1, 34, 44, 56, 62].
7. Zastosowania BCI Większość istniejących systemów to interfejsy wymagające od użytkownika skupienia, które można podzielić na: −−aktywne, gdy użytkownik świadomie próbuje wywołać określoną reakcję, −−reaktywne, w których sygnały są odpowiedzią na bodźce zewnętrzne. Coraz częściej projektowane są interfejsy pasywne, których zadaniem jest analiza sygnałów mózgowych i stanu użytkownika w danej sytuacji. Taki interfejs może monitorować skupienie podczas monotonnych czynności wymagających stałej uwagi, informować kierowcę, kiedy zasypia, włączając drgania kierownicy, tłumaczyć nieznane słowa podczas czytania tekstu w języku obcym lub wyświetlać informacje na temat obserwowanego obiektu [24, 49].
7.1. BCI w urządzeniach wspomagających osoby niepełnosprawne Obecnie najczęstszym zastosowaniem BCI jest pomoc osobom niepełnosprawnym w komunikacji z komputerem lub poruszaniu się. Najbardziej popularne są aplikacje do pisania (rys. 10). Prędkość i dokładność, które silnie zależą od użytkownika, są jednymi z przyczyn sprawiających, że BCI nie są jeszcze powszechnie stosowane [1, 3, 18, 49].
6. Metody klasyfikacji sygnałów mózgowych Badania nie wykazały znaczącej przewagi poszczególnych klasyfikatorów w stosunku do różnych aplikacji. Niektóre klasyfikatory wymagają ręcznej kalibracji w celu dopasowania parametrów do użytkownika. W celu wybrania odpowiednich cech charakterystycznych dobrze rozróżniających stany można stosować np. algorytmy genetyczne, analizę głównych składowych lub algorytmy selekcji sekwencyjnej [4, 6, 42, 58] (rys. 9). Do preferowanych klasyfikatorów sygnałów mózgowych należą [2, 42]: −−klasyfikatory liniowe wykorzystujące: −−analizę dyskryminacyjną (Linear Discriminant Analysis, LDA) – niewymagającą dużych mocy obliczeniowych, łatwą w implementacji i dającą dobre wyniki, −−metodę wektorów nośnych (Support Vector Machine, SVM) – o dobrych właściwościach generalizacji, niewrażliwą na przetrenowanie; −−klasyfikatory nieliniowe wykorzystujące: −−sieci neuronowe – najczęściej perceptronowe, zaletą jest brak ograniczenia liczby klas i przybliżanie dowolnych funkcji, −−klasyfikatory Bayesa – dobrze działające na niepewnych danych, −−klasyfikatory typu „najbliższy sąsiad” – o prostej zasadzie działania, przybliżające dowolną funkcję.
Rys. 9. Wykres a) wagi wybranych przez algorytm częstotliwości na wybranych kanałach, które pozwalają najlepiej rozróżnić dwa stany; pasek po prawej stronie i schemat b) suma wag wybranych częstotliwości względem kanału; pasek poniżej i wykres c) suma wag ze wszystkich kanałów względem częstotliwości [49] Fig. 9. Graph a) shows the weights of frequencies selected by the algorithm on given channels, which allow the best distinction between two states; bar on the right and scheme b) show the sum of weights of selected frequencies relative to the channel; bar below and graph c) show the sum of the weights of all the channels relative to frequency
Rys. 10. Aplikacja Hex-o-Spell jest jedną z wielu istniejących aplikacji do pisania, zaprojektowaną do działania z interfejsem wykorzystującym wyobrażenie ruchu; prędkość obracania się i wydłużania strzałki jest ustalana indywidualnie dla każdego użytkownika [49] Fig. 10. Hex-o-Spell application is one of many existing applications for writing, designed to work with an interface, that uses motor imaginery; speed of rotation and lengthening of the arrow is determined individually for each user
9
Nieinwazyjny interfejs mózg–komputer do zastosowań technicznych
Osobom niepełnosprawnym BCI może służyć nie tylko do komunikacji z innymi osobami, ale również do sterowania komputerem lub otoczeniem. Istnieje specjalna przeglądarka internetowa, systemy umożliwiające myślowe (tele)otwieranie i zamykanie okien, kontrolowanie oświetlenia, radia, telewizora lub telefonu. BCI działające na podstawie wyobrażenia ruchu mogą być stosowane nawet przez osoby, które nie mogą się poruszać. Istnieją działające systemy BCI wspomagające osoby niepełnosprawne, jak np. wózek poruszający się sterowany łączonymi sygnałami – z mózgu oraz z sensorów, dzięki czemu wózek może samodzielnie omijać przeszkody, jeśli dane z BCI nie są wystarczająco wiarygodne. Przygotowanie użytkownika do sterowania takim wózkiem trwa zaledwie kilka godzin [8, 20, 30, 32, 37] (rys. 11).
ności stosowania panelu sterująco-programującego, odczytując jedynie fale mózgowe – stan użytkownika.
7.3. BCI w inżynierii medycznej
Prace na temat leczenia przez wpływanie na własne fale mózgowe rozpoczęto kilka dekad temu. Dzięki plastyczności mózgu możliwe jest długotrwałe obniżenie lub podniesienie wybranych parametrów sygnałów mózgowych. BCI może służyć do zwiększenia kontroli nad pracą mięśni, utraconej w wyniku choroby lub wypadku. Aktualnie wykorzystywane roboty i serwooperatory rehabilitacyjne typu egzoszkielety działają na podstawie informacji o prędkości kończyn, danych z elektromiografii (badania aktywności mięśni) lub działają niezależnie od pacjenta. Połączenie działania BCI z mechanizmem rehabilitacyjnym pozwoliłoby na inicjowanie ruchu przez procesy mózgowe i sprawdzanie poprawności odczuwania ruchu u pacjenta. W ten sposób BCI mógłby wywoływać i kierować procesami plastycznymi w mózgu w celu przybliżenia aktywności mózgu do aktywności normalnej, co może powodować poprawę funkcji ruchowych układu mięśniowo-szkieletowego pacjenta. Tak samo jak przy konwencjonalnej rehabilitacji, metoda wykorzystująca robotykę rehabilitacyjną wymaga wielokrotnego powtarzania [16, 18, 60, 69]. Za pomocą metody neurofeedback można leczyć około 40 różnych rodzajów zaburzeń, m.in.: −−zaburzenia lękowe, −−bóle głowy o różnym podłożu, −−uzależnienia, −−chroniczny ból, −−choroby układu odpornościowego i oddechowego. Trening wykorzystujący wolne potencjały korowe (SCP), prowadzany w Instytucie Fizjologii i Patologii Słuchu, obejmuje trzy fazy po 10 spotkań i służy zmniejszeniu szumów usznych. Prace nad BCI pomagają w rozwoju neurologii, metod uczenia się i adaptacji, wykrywania kłamstw i faz snu lub do rozpoznawania osób. W przyszłości możliwe będzie wykorzystanie BCI, działającego w oparciu o aktywność theta, do zwiększenia efektywności uczenia się [9, 31, 59].
Rys. 11. Przykład zastosowania BCI przez Michele Tavella, naukowca z École Polytechnique Fédérale de Lausanne (EPFL) do sterowania wózkiem inwalidzkim [43] Fig. 11. An example of usage of BCI by Michele Tavella, a scientist from the École Polytechnique Fédérale de Lausanne (EPFL) to control a wheelchair
Rozwój BCI prowadzi do powstawania neuroprotez, które wykorzystując bezpośrednio sygnały mózgowe mogłyby mieć wiele stopni ruchliwości. Aktywna orteza może zastąpić osobie niepełnosprawnej utracone funkcje ruchowe. Jest to bardzo istotny kierunek rozwoju, ponieważ może pozwolić osobie niepełnosprawnej na przynajmniej częściowe odzyskanie samodzielności [15, 38, 51].
7.4. BCI w aplikacjach rozrywkowych
Coraz więcej aplikacji tworzonych jest z myślą o rozrywce. Najczęściej są to proste aplikacje do rysowania, działające podobnie jak aplikacje do pisania, w których litery i znaki są zastąpione przez kształty i kolory. Powstają również gry sterowane za pomocą BCI takie jak: Connect 4, BrainBasher, Alpha-World of Warcraft BCI (będące nakładką wprowadzającą dodatkową metodę sterowania do popularnej gry), Affective Pacman, Bacteria Hunt i Mind the Sheep! [10, 27, 45]. Działają one w oparciu o różne cechy charakterystyczne sygnałów, wymagają od gracza wyobrażenia ruchu, myślenia o określonym zadaniu lub odczytują emocje i dostosowują grę lub poziom trudności do jego aktualnego stanu. W bliskiej przyszłości pojawią się komercyjnie udane aplikacje i gry czynnościowe, w których użytkownik będzie widział efekty swoich działań nie tylko na ekranie komputera, umożliwiając np. zdalną grę w bilard.
7.2. BCI w robotyce
Jak wspomniano na początku artykułu, interfejs mózg–komputer może być wykorzystany we wszystkich obszarach robotyki – od przemysłowej, przez mobilną (także antropomorficzną), do robotyki medycznej. W robotyce mobilnej interfejs mózg–komputer może pełnić rolę elementu teleobecności pozwalając na (tele)sterowanie platformą jezdną z prawie taką samą prędkością i dokładnością jak sterowanie konwencjonalne. Użytkownik może w ten sposób np. brać udział w wycieczce po muzeum znajdującym się w innym mieście. Kontrolowanie robota może być w różnym stopniu zależne od użytkownika – przez bezpośrednie sterowanie kierunkiem ruchu lub określanie celu i automatyczne obliczanie ścieżki. P300-BCI zostało już wykorzystane do sterowania robotem antropomorficznym (humanoidalnym), umożliwiając przemieszczanie mechanizmu robota, chwytanie i przenoszenie obiektów. Dokładność komunikacji wynosi do 98,4 %, a polecenia można wydawać co 5 s [7, 11, 13, 14]. Pasywny BCI może zwiększyć bezpieczeństwo pracy z robotami przemysłowymi, szczególnie podczas programowania i serwisowania, kiedy zdarza się najwięcej wypadków. Programowanie robotów wspomagane przez BCI umożliwiłoby zatrzymanie ruchu robota przed uderzeniem operatora lub serwisanta, bez koniecz-
10
P
O
M
I
A
R
Y
•
A
U
T
O
M
8. Podsumowanie Współcześnie projektowane, produkowane i eksploatowane urządzenia, maszyny i systemy są w przeważającej większości rozwiązaniami mechatronicznymi. Istotą tych rozwiązań jest synergiczne połączenie mechaniki, elektronicznego sterowania i systemowego myślenia przy ich projektowaniu i wytwarzaniu. W porównaniu z konwencjonalnymi rozwiązaniami elektromechanicznymi główne różnice polegają na zmniejszaniu liczby i zakresu działania elementów i zespołów mechaniczA
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Alicja Cegielska, Mariusz Olszewski
nych, wprowadzeniu elektronicznych układów automatycznego sterowania i regulacji rozwiązujących problemy prowadzenia, koordynacji, nadzoru i optymalizacji realizowanych procesów, wykorzystaniu niematerialnych, programowych możliwości kształtowania ich właściwości oraz zapewnieniu współpracy elementów i zespołów pochodzących z różnych dziedzin techniki [53]. Podobna w rozwiązaniach konwencjonalnych i mechatronicznych jest jednak rola ich operatora i użytkownika. Wymaga ona umiejętności wprowadzania informacji i dyspozycji za pomocą przycisków, pokręteł, drążków i kierownic umieszczonych na pulpitach i panelach sterowniczych, w przypadku wspomagania komputerowego klawiatur, myszy i monitorów dotykowych [54]. W bardziej zaawansowanych rozwiązaniach mechatronicznych – również głosu (np. komend dla prowadzenia endoskopu przez chirurga w operacjach teleoperacyjnych), mimiki twarzy (np. dla sterowania wózków inwalidzkich przez pacjentów pozbawionych sprawności ruchowej kończyn), ruchów ramion i dłoni (np. dla bezpiecznego programowania robotów przemysłowych). W najbardziej zaawansowanych rozwiązaniach elektromiografii (np. dla sterowania aktywnymi ortezami utraconych kończyn) ze wszystkimi fizjologicznie ujemnymi skutkami tej techniki. Ogólnie – jest to wykorzystanie procesów myślowych mózgu człowieka, wykształconych lub specjalistycznie nauczonych, przekształconych w jego układzie nerwowym na ruch jego układu mięśniowo-szkieletowego, z całym bagażem możliwych błędów popełnianych w trakcie kolejnego przekształcania tego ruchu na ruch lub inne działanie elementów sterowania urządzeń technicznych. Wykorzystanie w pełni zautomatyzowanych urządzeń, maszyn i systemów mechatronicznych jest oczywiście pożądane, ale ze względu na środowisko, w którym mają one działać – bez obecności operatora lub użytkownika, obarczone możliwością wypadków. Dowodem są już stwierdzone przypadki zderzeń pojazdów samobieżnych (bez kierowcy), dopuszczonych w niektórych stanach USA do ruchu po drogach publicznych, nawet o ograniczonej dostępności (autostrady), czy też śmiertelne wypadki operatorów i serwisantów w zrobotyzowanych liniach produkcyjnych mimo zaawansowanych systemów zabezpieczeń. Nieinwazyjny interfejs mózg–komputer w tej sytuacji może stać się główną lub dodatkową metodą sterowania urządzeniami, maszynami i systemami mechatronicznymi. Potwierdzają to już udane zastosowania BCI w medycynie, zaawansowane próby kierowania pojazdami osób niepełnosprawnych ruchowo, coraz liczniejsze wykorzystanie BCI w grach komputerowych, w tym także w próbach gier czynnościowych. Głównym problemem sprawiającym, że BCI nie jest jeszcze szeroko stosowane w mechatronice jest ciągle nie w pełni dostateczna wiedza na temat zasad działania mózgu, nadal nie można dokładnie określić powiązań między myślami, sygnałami mózgowymi a zachowaniem człowieka. Prędkość i dokładność komunikacji nie wypełniają wszystkich wymagań urządzeń technicznych, są zresztą silnie zależne i od operatora lub użytkownika tych urządzeń, jak i od metody realizacji BCI [25, 46, 76]. Nadal stosunkowo dobrze rozpoznawane są stany pobudzenia i relaksu mózgu, co odpowiada działaniom urządzeń sterowanych tylko sygnałami dwuwartościowymi. Zdecydowanie gorsza jest umiejętność rozpoznawania stanów pośrednich aktywności mózgu, co odpowiadałoby działaniom potrzebnych w mechatronice aktuatorów serwomechanizmowych wymagających sterowania sygnałami ciągłymi i cyfrowymi. Z tego względu badane są intensywnie metody znajdowania źródeł sygnałów mózgowych, co jest jednym z większych problemów w analizie sygnału EEG. Urządzenia pomiarowe EEG
są stopniowo ulepszane w celu zwiększenia rozdzielczości przestrzennej i czasowej mierzonych sygnałów, a więc zwiększenia liczby osób mogących osiągnąć wysoki poziom kontroli BCI i skrócenia czasy uczenia się [16, 37]. Interfejs mózg–komputer jest rozwijany na każdym etapie jego działania – przez nowe metody usuwania szumów, rozpoznawanie sygnałów charakterystycznych, implementacje nowych programów samouczących i autokalibracyjnych. Realne oczekiwania na poprawę właściwości BCI wiążą się z wykorzystaniem potencjałów powstających po rozpoznaniu błędu w trakcie automatycznego uczenia oraz detekcji zmian zamiast klasyfikacji sygnału [23, 41, 63, 64]. Poprawy akceptacji wymaga sama aparatura pomiarowa – dotyczy to także czepków do EEG i stosowanego żelu, a więc trudności w zakładaniu i zdejmowaniu aparatury pomiarowej oraz wyglądu użytkownika podczas korzystania z interfejsu. Poprawy szuka się w systemach tzw. suchych elektrod odczytujących sygnały mózgowe. Istotny wpływ na to, w jakich dziedzinach i do jakich celów będą w najbliższej przyszłości stosowane urządzenia BCI ma również bezpieczeństwo użytkowania, wydajność, praktyczność, niezawodność, akceptacja środowiska użytkowników oraz stopień, w jakim przewyższą one tradycyjne techniki sterowania i odpowiedzą na potrzeby użytkowników [44, 47, 52, 76].
Bibliografia 1. Aloise F., Aricò P., Schettini F., Salinari S., Mattia D., Cincotti F., Asynchronous gaze-independent event-related potential-based brain–computer interface, “Artificial Intelligence in Medicine”, Vol. 59, No. 2/2013, 61–69, DOI: 10.1016/j.artmed.2013.07.006. 2. Aloise F., Schettini F., Aricò P., Salinari S., Babiloni F., Cincotti F., A comparison of classification techniques for a gaze-independent P300-based brain–computer interface, “Journal of Neural Engineering”, 9(4):045012, 2012, DOI: 10.1088/1741-2560/9/4/045012. 3. Amiri S., Rabbi A., Azinfar L., Fazel-Rezai R., A review of P300, SSVEP, and hybrid P300/SSVEP brain-computer interface systems, [w:] Brain-Computer Interface Systems – Recent Progress and Future Prospects, 2013, DOI: 10.5772/56135. 4. Ang KK., Chin Z.Y., Zhang H., Guan C., Filter bank common spatial pattern (fbcsp) in brain-computer interface, Neural Networks, 2008. IJCNN 2008. (IEEE World Congress on Computational Intelligence), 2390–2397, IEEE, 2008, DOI: 10.1109/IJCNN.2008.4634130. 5. Basar E., Basar-Eroglu C., Karakas S., Schürmann M., Are cognitive processes manifested in event-related gamma, alpha, theta and delta oscillations in the EEG? “Neuroscience Letters”, Vol. 259, No. 3/1999, 165–168, DOI: 10.1016/S0304-3940(98)00934-3. 6. Bashashati A., Fatourechi M., Ward R.K., Birch G.E., A survey of signal processing algorithms in brain–computer interfaces based on electrical brain signals, “Journal of Neural engineering”, 4(2):R32, 2007. 7. Bell C.J., Shenoy P., Chalodhorn R., Rao R.P., Control of a humanoid robot by a noninvasive brain–computer interface in humans, “Journal of Neural Engineering”, 5(2):214, 2008. 8. Birbaumer N., Murguialday A.R., Cohen L., Brain-computer interface in paralysis, “Current Opinion in Neurology”, 21(6):634–638, 2008, DOI: 10.1097/WCO. 0b013e328315ee2d. 9. Blankertz B., Dornhege G., Krauledat M., Müller K.-R., Curio G., The non-invasive Berlin Brain–Computer Interface: fast acquisition of effective performance in untrained subjects, “Neuroimage”, 37(2):539–550, 2007.
11
Nieinwazyjny interfejs mózg–komputer do zastosowań technicznych
25. Górska T., Majczyński H., Mechanizmy sterowania ruchami dowolnymi. [w:] praca zbiorowa Górska T., Grabowska A., Zagrodzka J. (red.), Mózg a zachowanie, Wydawnictwo Naukowe PWN, 2000. 26. Guger C., Krausz G., Allison B.Z., Edlinger G., Comparison of dry and gel based electrodes for P300 brain–computer interfaces, “Frontiers in Neuroscience”, 6, 2012, DOI: 10.3389/fnins.2012.00060. 27. Gürkök H., Nijholt A., Poel M., Obbink M., Evaluating a multi-player brain–computer interface game: Challenge versus co-experience, Entertainment Computing, Vol. 4, 3/2013, 195–203, DOI: 10.1016/j.entcom.2012.11.001. 28. Handy T. C., Event-related Potentials: A methods handbook. MIT Press, 2005. 29. He B., Modeling and Imaging of Bioelectrical Activity. Springer Verlag, 2004. 30. Hinterberger T., Schmidt S., Neumann N., Mellinger J., Blankertz B., Curio G., Birbaumer N., Brain-computer communication and slow cortical potentials, Biomedical Engineering, IEEE Transactions on, Vol. 51, 6/2004, 1011–1018, DOI: 10.1109/TBME.2004.827067. 31. Hoffmann L., Cicchese J., Berry S., Hippocampal theta-based brain computer interface, “Brain-Computer Interfaces”, Vol. 74, 155–184, Springer Verlag, 2015, DOI: 10.1007/978-3-319-10978-7_6. 32. Hoffmann U., Vesin J.-M., Ebrahimi T., Diserens K., An efficient P300-based brain–computer interface for disabled subjects, “Journal of Neuroscience Methods”, Vol. 167, 1/2008, 115–125, DOI: 10.1016/j.jneumeth.2007.03.005. 33. Huang R.-S., Jung T.-P., Makeig S., Event-related brain dynamics in continuous sustained-attention tasks, [w:] Foundations of Augmented Cognition, 65–74. Springer Verlag, 2007, DOI: 10.1007/978-3-540-73216-7_8. 34. Jonmohamadi Y., Poudel G., Innes C., Jones R., Source-space ICA for EEG source separation, localization, and time-course reconstruction. “NeuroImage”, Vol. 101, 720– 737, 2014, DOI: 10.1016/j.neuroimage.2014.07.052. 35. Kaplan A.Y., Fingelkurts A.A., Fingelkurts A.A., Borisov S.V., Darkhovsky B.S., Nonstationary nature of the brain activity as revealed by EEG/MEG: methodological, practical and conceptual challenges, “Signal Processing”, Vol. 85, 11/2005, 2190–2212, DOI: 10.1016/ j.sigpro.2005.07.010. 36. Kübler A., Nijboer F., Mellinger J., Vaughan T.M., Pawelzik H., Schalk G., McFarland D.J., Birbaumer N., Wolpaw J.R., Patients with ALS can use sensorimotor rhythms to operate a brain-computer interface, “Neurology”, 64(10):1775–1777, 2005. 37. Kübler A., Mattia D., Rupp R., Tangermann M., Facing the challenge: Bringing brain–computer interfaces to end-users, “Artificial Intelligence in Medicine”, 59:55–60, 2013, DOI: 10.1016/j.artmed.2013.08.002. 38. Lebedev M.A., Nicolelis M.A., Brain–machine interfaces: past, present and future, “Trends in Neurosciences”, Vol. 29, 9/2006, 536–546, DOI: 10.1016/j.tins.2006.07.004. 39. Lee E.C., Woo J.C., Kim J.H., Whang M., Park K.R., A brain–computer interface method combined with eye tracking for 3D interaction, “Journal of Neuroscience Methods”, Vol. 190, 2/2010, 289–298, DOI: 10.1016/ j.jneumeth.2010.05.008. 40. Leuthardt E.C., Schalk G., Wolpaw J.R., Ojemann J.G., Moran D.W., A brain–computer interface using electrocorticographic signals in humans, “Journal of Neural Engineering”, 1(2):63–71, 2004. 41. Llera A., van Gerven M.A., Gómez V., Jensen O., Kappen H.J., On the use of interaction error potentials for adaptive
10. Bos D.P.-O., Reuderink B., van de Laar B., Gürkök H., Mühl C., Poel M., Nijholt A., Heylen D., Brain-computer interfacing and games, [in:] Brain-Computer Interfaces, 149–178, 2010, DOI: 10.1007/978-1-84996-272-8_10. 11. Carlson T., Tonin L., Leeb R., Rohm M., Rupp R., Al-Khodairy A., Millán J. d. R., BCI telepresence: A six patient evaluation. Proceedings of TOBI Workshop lll: Bringing BCIs to End-Users: Facing the Challenge, EPFL-CONF-174371, 18–19, 2012. 12. Cegielska A., Opracowanie możliwych realizacji interfejsu mózg–komputer, Praca magisterska, Politechnika Warszawska, 2015. 13. Cheeín F.A.A., Carelli R., Celeste W.C., Bastos T.F., Di Sciascio F., Maps managing interface design for a mobile robot navigation governed by a BCI, “Journal of Physics: Conference Series”, Vol. 90, IOP Publishing, 2007, DOI:10.1088/1742-6596/90/1/012088. 14. Chella A., Pagello E., Menegatti E., Sorbello R., Anzalone S.M., Cinquegrani F., Tonin L., Piccione F., Prifitis K., Blanda C. et al., A BCI teleoperated museum robotic guide, “Complex, Intelligent and Software Intensive Systems”, CISIS’09. International Conference, 783–788. IEEE, 2009, DOI: 10.1109/CISIS.2009.154. 15. Cincotti F., Mattia D., Aloise F., Bufalari S., Schalk G., Oriolo G., Cherubini A., Marciani M.G., Babiloni F., Non-invasive brain–computer interface system: towards its application as assistive technology, “Brain Research Bulletin”, 75(6):796–803, 2008, DOI: 10.1016/j.brainresbull.2008.01.007. 16. Daly J.J., Wolpaw J.R., Brain–computer interfaces in neurological rehabilitation, “Lancet Neurology”, 7(11):1032– 1043, 2008, DOI: 10.1016/S1474-4422(08)70223-0. 17. Delorme A., Sejnowski T., Makeig S., Enhanced detection of artifacts in EEG data using higher-order statistics and independent component analysis, “Neuroimage”, 34(4):1443–1449, 2007. 18. Devlaminck D., Wyns B., Boullart L., Santens P., Otte G., Brain-computer interfaces: from theory to practice, European Symposium on Artificial Neural Networks, 2009. 19. Durka P.J., Blinowska K.J., Analysis of EEG transients by means of matching pursuit. Annals of Biomedical Engineering, Vol. 23, 5/1995, 608–611, DOI: 10.1007/ BF02584459. 20. Fabiani G.E., McFarland D. J., Wolpaw J.R., Pfurtscheller G., Conversion of EEG activity into cursor movement by a brain-computer interface (BCI). IEEE Transactions on Neural Systems and Rehabilitation Engineering, 12(3):331–338, 2004, DOI: 10.1109/TNSRE.2004.834627. 21. Fatourechi M., Bashashati A., Ward R.K., Birch G.E., EMG and EOG artifacts in brain computer interface systems: A survey, “Clinical Neurophysiology”, Vol. 118, 3/007, 480–494, DOI: 10.1016/j.clinph.2006.10.019. 22. Fonseca C., Cunha J.S., Martins R., Ferreira V., de Sá J.M., Barbosa M., da Silva A.M., A novel dry active electrode for EEG recording. IEEE Trans. Biomed. Engineering, Vol. 54, 1/2007, 162–165, DOI: 10.1109/ TBME.2006.884649. 23. Gargiulo G., Calvo R. A., Bifulco P., Cesarelli M., Jin C., Mohamed A., van Schaik A., A new EEG recording system for passive dry electrodes, Clinical Neurophysiology, Vol. 121, 5/2010, 686–693, DOI: 10.1016/j.clinph.2009.12.025. 24. George L., Lécuyer A. et al., An overview of research on ’passive’ brain-computer interfaces for implicit human-computer interaction. International Conference on Applied Bionics and Biomechanics ICABB 2010-Workshop W1’Brain-Computer Interfacing and Virtual Reality’, 2010.
12
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Alicja Cegielska, Mariusz Olszewski
brain computer interfaces, “Neural Networks”, Vol. 24, 10/2011, 1120–1127, DOI: 10.1016/j.neunet.2011.05.006. 42. Lotte F., Congedo M., Lécuyer A., Lamarche F., Arnaldi B. et al., A review of classification algorithms for EEG-based brain–computer interfaces, “Journal of Neural Engineering”, Vol. 4, 2/2007, DOI: 10.1088/1741-2560/4/2/ R01. 43. Luna P., Controlling machines with just the power of thought, “The Lancet Neurology”, Vol. 10, No. 9/2011, 780–781, DOI: 10.1016/S1474-4422(11)70180-6. 44. Makeig S., Debener S., Onton J., Delorme A., Mining event-related brain dynamics, “Trends in Cognitive Sciences”, 8(5):204–210, 2004. 45. Martinez P., Bakardjian H., Cichocki A., Fully online multicommand brain–computer interface with visual neurofeedback using SSVEP paradigm, “Computational Intelligence and Neuroscience”, 2007:13–13, 2007, DOI: 10.1155/2007/94561. 46. Mason S.G., Birch G.E., A general framework for brain-computer interface design, “Neural Systems and Rehabilitation Engineering”, Vol. 11, 1/2003, 70–85, DOI: 10.1109/TNSRE.2003.810426. 47. McFarland D.J., Sarnacki W.A., Wolpaw J.R., Brain–computer interface (BCI) operation: optimizing information transfer rates, “Biological Psychology”, Vol. 63, 3/2003, 237–251, DOI: 10.1016/S0301-0511(03)00073-5. 48. Müller K.-R., Krauledat M., Dornhege G., Curio G., Blankertz B., Machine learning techniques for brain-computer interfaces, “Biomedical Engineering”, 49(1):11–22, 2004. 49. Müller K.-R., Tangermann M., Dornhege G., Krauledat M., Curio G., Blankertz B., Machine learning for real-time single-trial EEG-analysis: from brain–computer interfacing to mental state monitoring, “Journal of Neuroscience Methods”, 167(1):82–90, 2008. 50. Neuper C., Scherer R., Wriessnegger S., Pfurtscheller G., Motor imagery and action observation: modulation of sensorimotor brain rhythms during mental control of a brain– computer interface, “Clinical Neurophysiology”, Vol. 120, 2/2009, 239–247, DOI: 10.1016/j.clinph.2008.11.015. 51. Nicolelis M.A., Brain–machine interfaces to restore motor function and probe neural circuits, “Nature Reviews Neuroscience”, Vol. 4, 5/2003, 417–422, DOI: 10.1038/ nrn1105. 52. Obermaier B., Neuper C., Guger C., Pfurtscheller G., Information transfer rate in a five-classes brain-computer interface, “Neural Systems and Rehabilitation Engineering”, Vol. 9, 3/2001, 283–288, DOI: 10.1109/7333.948456. 53. Olszewski M. i in., Podstawy mechatroniki. REA, Warszawa 2006. 54. Olszewski M. i in., Urządzenia i systemy mechatroniczne. REA, Warszawa 2009. 55. Parra L.C., Spence C.D., Gerson A.D., Sajda P., Recipes for the linear analysis of EEG, “Neuroimage”, 28(2):326– 341, 2005. 56. Pereda E., Quiroga R.Q., Bhattacharya J., Nonlinear multivariate analysis of neurophysiological signals, “Progress in Neurobiology”, 77(1):1–37, 2005. 57. Pfurtscheller G., Lopes da Silva F. H., Event-related EEG/ MEG synchronization and desynchronization: basic principles, “Clinical Neurophysiology”, 110(11):1842–1857, 1999. 58. Pfurtscheller G., Neuper C., Guger C., Harkam W., Ramoser H., Schlogl A., Obermaier B., Pregenzer M., i in., Current trends in Graz brain–computer interface (BCI) research, “IEEE Transactions on Rehabilitation Engineering”, Vol. 8, 2/2000, 216–219, DOI: 10.1109/86.847821. 59. Ravi K., Palaniappan R., Neural network classification of late gamma band electroencephalogram features, “Soft
Computing”, Vol. 10, 2/2006, 163–169, DOI: 10.1007/ s00500-004-0439-7. 60. Reyes J.F., Tosunoglu S., An overview of brain–computer interface technology applications in robotics, Florida Conference on Recent Advances in Robotics, 4–5 May 2011. 61. Rohm M., Schneiders M., Müller C., Kreilinger A., Kaiser V., Müller-Putz G.R., Rupp R., Hybrid brain–computer interfaces and hybrid neuroprostheses for restoration of upper limb functions in individuals with high-level spinal cord injury, “Artificial Intelligence in Medicine”, Vol. 59, 2/2013, 133–142, DOI: 10.1016/j.artmed.2013.07.004. 62. Sannelli C., Vidaurre C., Müller K.-R., Blankertz B., CSP patches: an ensemble of optimized spatial filters. An evaluation study, “Journal of Neural Engineering”, 8(2):025012, 2011, DOI: 10.1088/1741-2560/8/2/025012. 63. Schalk G., Brunner P., Gerhardt L.A., Bischof H., Wolpaw J.R., Brain–computer interfaces (BCIs): Detection instead of classification, “Journal of Neuroscience Methods”, Vol. 167, 1/2008, 51–62, DOI: 10.1016/j.jneumeth.2007.08.010. 64. Schalk G., Leuthardt E.C., Brunner P., Ojemann J.G., Gerhardt L.A., Wolpaw J.R., Real-time detection of event-related brain activity, “Neuroimage”, 43(2):245–249, 2008, DOI: 10.1016/j.neuroimage.2008.07.037. 65. Sporns O., Tononi G., Kötter R., The human connectome: a structural description of the human brain, “PLoS Computational Biology”, 1(4):e42, 2005, DOI: 10.1371/ journal.pcbi.0010042. 66. Stern R.M., Ray W.J., Quigley K.S., Psychophysiological recording, Oxford University Press, 2001. 67. Steward O., Principles of cellular, molecular, and developmental neuroscience, Springer Verlag, 1989. 68. Tan D.S., Nijholt A., Brain-Computer Interfaces Applying our Minds to Human-Computer Interaction, Springer Verlag, Londyn, 2010. 69. Tee K.P., Guan C., Ang K.K., Phua K.S., Wang C., Zhang H., Augmenting cognitive processes in robot-assisted motor rehabilitation, Biomedical Robotics and Biomechatronics, 2nd IEEE RAS & EMBS International Conference, 698– 703, IEEE, 2008, DOI: 10.1109/BIOROB.2008.4762894. 70. Traczyk W.Z., Fizjologia człowieka w zarysie. Państwowy Zakład Wydawnictw Lekarskich, 1978. 71. Treder M.S., Blankertz B., (C)overt attention and visual speller design in an ERP-based brain-computer interface, “Behavioral and Brain Functions”, 6/2010, DOI: 10.1186/1744-9081-6-28. 72. Úbeda A., Iáñez E., Azorín J.M., Shared control architecture based on RFID to control a robot arm using a spontaneous brain–machine interface, “Robotics and Autonomous Systems”, Vol. 61, 8/2013, 768–774, DOI: 10.1016/j.robot.2013.04.015. 73. van Gerven M., Farquhar J., Schaefer R., Vlek R., Geuze J., Nijholt A., Ramsey N., Haselager P., Vuurpijl L., Gielen S. et al., The brain–computer interface cycle, “Journal of Neural Engineering”, 6(4):041001, 2009, DOI: 10.1088/1741-2560/6/4/041001. 74. Wolpaw J.R., Wolpaw E.W., Brain–computer interfaces: something new under the sun, [in:] Brain–Computer Interfaces: Principles and Practice, Oxford University Press New York, 2012, DOI: 10.1093/acprof:oso/9780195388855.003.0001. 75. Wróbel A., Neuron i sieci neuronowe, [w:] praca zbiorowa Górska T., Grabowska A., Zagrodzka J. (red.), Mózg a zachowanie, Wydawnictwo Naukowe PWN, 2000. 76. Wróbel A., W poszukiwaniu integracyjnych mechanizmów działania mózgu, [w:] praca zbiorowa Górska T., Grabowska A., Zagrodzka J. (red.), Mózg a zachowanie, Wydawnictwo Naukowe PWN, 2000.
13
Nieinwazyjny interfejs mózg–komputer do zastosowań technicznych
Noninvasive brain–computer interfaces for technical applications Abstract: The aim of this paper is to briefly describe principles of brain–computer interface and presentation of its possible technical applications. At this point in time is in mechatronics an intensively developing system, that measures brain activity and on this basis generates control signals for devices or machines. This article contains basic information about the human brain, its activity and measurement methods, processing and classification of signals. Different abilities were presented to the realization of the interface and using it technical. Keywords: brain–computer interface, electroencephalography, control by the human brain, brain activity
mgr inż. Alicja Cegielska
dr hab. inż. Mariusz Olszewski, prof. PW
Absolwentka (2015) Wydziału Mechatroniki Politechniki Warszawskiej; praca magisterska na temat zachowań i aplikacji interfejsu mózg–komputer, egzamin magisterski wyróżniony przez Radę Wydziału Mechatroniki i Rektora Politechniki Warszawskiej. Obecnie doktorantka w Instytucie Automatyki i Robotyki Politechniki Warszawskiej.
Pracownik Politechniki Warszawskiej od 1965 r., stypendysta Fundacji Alexandra v. Humboldta w latach 70., w 1978 r. organizuje pierwszą w Polsce konferencję naukową na temat robotyki przemysłowej, w 1985 r. WNT wydaje napisaną pod jego kierunkiem pierwszą polską monografię na temat maszyn manipulacyjnych, w minionym dziesięcioleciu wydawnictwo REA wydaje napisane pod jego kierunkiem pierwsze polskie podręczniki z zakresu mechatroniki: „Mechatronika” (2002), „Podstawy mechatroniki” (2006) oraz dwutomowe „Urządzenia i systemy mechatroniczne” (2009). Specjalista w zakresie napędów i sterowania maszyn i robotów przemysłowych. Dyrektor Instytutu Automatyki i Robotyki na Wydziale Mechatroniki Politechniki Warszawskiej w latach 1994–2012; od 2003 r. członek Rady Naukowej Przemysłowego Instytutu Automatyki i Pomiarów PIAP.
a.cegielska@mchtr.pw.edu.pl
14
P
O
M
m.olszewski@mchtr.pw.edu.pl
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015, 15–24, DOI: 10.14313/PAR_217/15
Interfejs mózg–komputer w zadaniu sterowania robotem mobilnym Magdalena Górska
Polprox Sp. z o.o., ul. Bogatki 5, 02-837 Warszawa
Mariusz Olszewski
Politechnika Warszawska, Wydział Mechatroniki, Instytut Automatyki i Robotyki, ul. św. Andrzeja Boboli 8, 02-525 Warszawa
Streszczenie: W artykule przedstawiono nowoczesną metodę komunikacji między człowiekiem
a maszyną, w której wykorzystane są potencjały mózgowe – interfejs mózg–komputer. Opisano rozwój i właściwości metod komunikowania ludzkiego mózgu z urządzeniami i maszynami. Zaprezentowano projekt interfejsu, jakiego użyto do sterowania ruchem robota mobilnego. Aplikacja wykorzystuje elektroencefalografię, rolę sensora pełni komercyjny kask z suchymi elektrodami, umożliwiający pomiar poziomu pobudzenia i relaksu. Słowa kluczowe: interfejs mózg–komputer, elektroencefalografia, robot mobilny, sterowanie przy pomocy ludzkiego mózgu
1. Wprowadzenie Robotyka mobilna jest najsilniej rozwijającym się działem współczesnej robotyki. Wynika z to kilku przyczyn. Pierwszą są doświadczenia zebrane w trakcie przeszło 50-letniego okresu rozwoju robotyki przemysłowej, upowszechnienia jej obszarów aplikacji oraz pewnej, niezamierzonej zresztą, standaryzacji rozwiązywań w odniesieniu do wspomnianych aplikacji. Drugą są ekstremalnie zróżnicowane środowiska pracy człowieka, które także, w odniesieniu do zebranych doświadczeń przemysłowych, domagają się zastępowania lub wspomagania jego obecności na lądzie, w wodzie i w powietrzu. Wreszcie trzecią przyczyną jest zainteresowanie bioniką jako nauką zajmującą się wykorzystaniem procesów biologicznych w technice, szczególnie procesów ruchu oraz budowaniem urządzeń technicznych na wzór organizmów żywych. Samo pojęcie bioniki jako nauki pojawiło się na jednej z już nieco zapomnianych konferencji naukowych w 1960 r. w Dayton w Stanach Zjednoczonych, wykorzystanie jej umożliwił dopiero rozwój mechatroniki, która w ostatnim dziesięcioleciu zapewniła bionice próby praktycznej realizacji w technice. Maszyny lokomocyjno-manipulacyjne robotyki mobilnej należą do typowych, jednocześnie najbardziej spektakularnych rozwiązań mechatronicznych. Istotą tych rozwiązań jest synergiczne połączenie zaawansowanych mechanizmów ruchu, sterowania procesorowego wraz z programowaniem, koordynacją, nadzorem i optymalizacją realizowanych procesów oraz syste-
Autor korespondujący: Magdalena Górska, m.gorska90@gmail.com Artykuł recenzowany nadesłany 04.08.2015 r., przyjęty do druku 03.09.2015 r. Zezwala się na korzystanie z artykułu na warunkach licencji Creative Commons Uznanie autorstwa 3.0
mowego myślenia przy ich projektowaniu i wytwarzaniu z elementów i zespołów pochodzących z różnych dziedzin techniki. Są to zasadnicze różnice w porównaniu z konwencjonalnymi rozwiązaniami elektromechanicznymi. Natomiast podobna w rozwiązaniach konwencjonalnych i mechatronicznych jest rola ich operatora i użytkownika. Wymaga ona umiejętności wprowadzania informacji programowych i dyspozycji za pomocą przycisków, pokręteł, drążków i kierownic pulpitów oraz paneli sterowniczych, a w przypadku wspomagania komputerowego – klawiatur, myszy i monitorów dotykowych [2]. Ogólnie – jest to wykorzystanie procesów myślowych mózgu człowieka, wykształconych lub specjalistycznie nauczonych, przekształconych w jego układzie nerwowym na ruch jego układu mięśniowo-szkieletowego, z całym bagażem możliwych błędów popełnianych w trakcie kolejnego przekształcania tego ruchu na przemieszczanie lub inne działanie elementów sterowania urządzeń technicznych. Choć popularne ostatnio interfejsy wizyjne lub głosowe wydają się być bardzo nowatorskie i innowacyjne, to jednak nie są najbardziej naturalnymi metodami komunikacji między człowiekiem a maszyną. Idealny pod tym względem wydaje się interfejs wykorzystujący nasze myśli, a więc interfejs mózg–komputer [3, 9]. Problematyka interfejsów wykorzystujących myśli, a więc bezpośrednich interfejsów mózg–komputer (ang. Brain-Computer Interface, BCI) pojawiła się już w latach 70. ubiegłego wieku, jednak dopiero rozwój technologii procesorowej, który dokonał się w ostatnich latach umożliwił jej znaczący rozwój oraz praktyczną realizację [13]. Choć dla wielu wciąż brzmi to jak science fiction, sterowanie z wykorzystaniem myśli staje się stopniowo rzeczywistością. Przykładami praktycznej realizacji mogą być procesy zastępujące pisanie na klawiaturze, sterowanie wózkiem inwalidzkim lub obsługę aktywnej ortezy tylko za pomocą myśli [14, 3]. Rozwiązania, w których zastosowano interfejs mózg–komputer stają się szansą na poprawę jakości życia oraz umożliwienie kontaktu ze światem osobom niepełnosprawnym, wymagającym opieki lub pacjentom w ciężkich stadiach chorób neurologicznych [15]. Ponadto w wielu ośrodkach naukowych trwają prace
15
Interfejs mózg–komputer w zadaniu sterowania robotem mobilnym nad budową robotów humanoidalnych (antropomorficznych), sterowanych za pomocą tego interfejsu. Przykładem może być robot humanoidalny zbudowany w CNRS-AIST Joint Robotics Laboratory w Tsukuba w Japonii przy współpracy z CNRS-LIRMM Interactive Digital Human Group w Montpellier we Francji. Celem twórców takich rozwiązań jest spowodowanie, by osoba sterująca robotem czuła się tak, jakby była w jego wnętrzu, a mechanizm (korpus) maszyny byłby jej ciałem.
ral nerves and muscles]. Definicja ta odróżnia interfejsy BCI od pozostałych metod komunikacji, w tym EMG, które wymagają pewnej formy kontroli mięśni, co ogranicza możliwość ich wykorzystania przez osoby dotknięte poważną niepełnosprawnością ruchową, taką jak np. późne stadium stwardnienia zanikowego bocznego, porażenie pnia mózgu, udar mózgu, lub ciężkie porażenie mózgowe [1]. Oprócz aplikacji motorycznych (ruchowych) BCI, w których użytkownik celowo stara się kontrolować aktywność swojego mózgu, istnieją jeszcze tzw. niejawne metody interakcji BCI, w których zamiast wykorzystywać aktywność wyselekcjonowaną i sterowaną przez użytkownika, wykorzystuje się aktywność dekorelowaną z aktualnie wykonywanym przez niego zadaniem [8]. Pojęcie interakcji niejawnej zostało wprowadzone przez Jakoba Nielsena1 około 1993 r., jako obalenie istniejących wówczas paradogmatów dotyczących interakcji, w formie ściśle kontrolowanego dialogu składającego się z wyspecyfikowanych komend pochodzących od użytkownika, a następnie przetwarzanych przez komputer. Interakcja niejawna często nie jest nawet dialogiem w tradycyjnym rozumieniu tego słowa, mimo że może być analizowana jako dialog, ponieważ występuje tam wymiana informacji między mózgiem człowieka a komputerem. Pojęcie to pojawiało się także w innych pracach, określone na przykład jako pasywny monitoring intencji użytkownika, jako wykonanie akcji, która nie jest otwartym celem użytkownika, ale jest rozumiana przez komputer jako określony sygnał wejściowy [11, 17]. Można określić interakcję niejawną jako nieświadomą akcję, towarzyszącą i zintegrowaną z inną akcją [18]. Jeśli jednak użytkownik interfejsu stara się kontrolować niejawną interakcję, staje się ona interakcją w powszechnie rozumianym sensie. Przykładem jest interakcja międzyludzka, kiedy podczas rozmowy jedna ze stron dialogu stara się modulować głos tak, żeby nie dało się z niego wyczytać jak bardzo jest zestresowana. W przypadku dostarczania niejawnej interakcji, która może być traktowana jako sygnał wejściowy do wykonania jakiejś operacji, działanie to określa się jako tzw. pasywne BCI. Uznaje się to za dodatkową formę komunikacji między mózgiem a komputerem, która nie jest zamierzona przez użytkownika [8]
2. Rozwój komunikacji mózg-maszyna Pierwsze spekulacje na temat wykorzystania myśli człowieka w celu komunikacji z maszyną pojawiły się w momencie wynalezienia w 1929 r. przez Hansa Bergera elektroencefalografii (ang. Electroencefalography, EEG). Zaczęto wówczas zastanawiać się, czy możliwe jest sterowanie urządzeniami technologicznymi bez użycia siły ludzkich mięśni, gestów lub komend głosowych. W 1970 r. powstały pierwsze, jeszcze prymitywne projekty, w których próbowano elektryczną aktywność ludzkiego mózgu wykorzystać do komunikacji z maszyną. W tej samej dekadzie XX wieku, dzięki zainteresowaniu organizacji związanej z Ministerstwem Obrony Stanów Zjednoczonych (ang. Advanced Research Project Agency, ARPA), wzrosła intensywność prowadzonych badań ukierunkowanych na aplikacje bioniczne. Program badań dofinansowywanych przez organizację ARPA, prowadzony przez George Lawrence’a, początkowo skupiał się na autoregulacji i kognitywnym biofeedbacku, jaki miał na celu rozwój określonych zdolności ludzkich i skierowany był głównie do osób zatrudnionych w lotnictwie wojskowym, których zadania wiążą się z bardzo dużymi obciążeniami psychicznymi. Jednym z badanych wówczas zagadnień było wykorzystanie sygnałów mózgowych, analizowanych w czasie rzeczywistym przez komputer sterujący pojazdem i jego uzbrojeniem. Największy sukces wśród prowadzonych prac odniósł projekt kierowany przez Jacquesa Vidala – dyrektora laboratorium BCI na Uniwersytecie w Kalifornii. Założenia projektu obejmowały użycie generowanych komputerowo stymulacji wizyjnych oraz zaawansowanego przetwarzania sygnałów. Udowodniono, że wzrokowe potencjały wywołane (ang. Visual Evoked Potentials, VEP) mogą stanowić kanał komunikacyjny, umożliwiający człowiekowi kontrolę kursora w przestrzeni 2D [11]. Dzięki tym badaniom oraz innym podobnym projektom uwidoczniła się waga rozróżnienia między interfejsami sterowania wykorzystującymi elektroencefalografię oraz tymi, które wykorzystują elektromiografię (ang. Electromiography, EMG) mięśni skóry głowy oraz twarzy. Wykazano, że aktywność EMG może być bardziej wydajna niż EEG, a brak ich rozróżnienia utrudnia w znacznym stopniu rozwój tych technik w zadaniach BCI. W efekcie utworzono definicję BCI jako systemu komunikacji, który nie zależy od ścieżek nerwów obwodowych i mięśni [ang. A brain-computer interface is a communication system that does not depend on the brain’s normal output pathways of periphe-
3. Potencjały mózgowe Jedną z najbardziej intuicyjnych klasyfikacji metod badania aktywności mózgu jest podział na metody (tab. 1): −−inwazyjne, −−częściowo inwazyjne, −−nieinwazyjne. Najczęściej stosowaną metodą we współcześnie prowadzonych badaniach aktywności mózgu jest nieinwazyjna metoda elektroencefalograficzna (EEG). Wynika to przede wszystkim z faktu, że
http://pl.wikipedia.org/wiki/Jakob_Nielsen
1
Tabela 1. Klasyfikacja metod badania aktywności mózgu [14, 3] Table 1. Classification of methods used to measure brain activity
Inwazyjne
Częściowo inwazyjne
Nieinwazyjne
Implantowane elektrody domózgowe (ang. IntraCortical Recordings, IR)
Elektrokortykografia (ang. Electrocorticography, EcoG)
− Magnetoencefalografia (ang. Magnetoencephalography, MEG) − Funkcjonalny magnetyczny rezonans jądrowy (ang. functional Magnetic Resonance Imaging, fMRI) − Spektroskopia w podczerwieni (ang. Near InfraRed Spectoscop, NIRS) − Pozytronowa emisyjna tomografia komputerowa (ang. Positron Emission Tomograph, PET) − Elektroencefalografia (ang. Electroencefalography, EEG)
16
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Magdalena Górska, Mariusz Olszewski inne metody nieinwazyjne, jak MEG, PET oraz fMRI (tab. 1) są stosunkowo drogie, bardziej skomplikowane pod względem technicznym, zatem szansa ich stosowania w urządzeniach powszechnego użytku jest mniejsza niż w przypadku EEG. Wadą metod optycznych (obrazowych) jest natomiast zależność wyniku badania od przepływu krwi, który charakteryzuje się dużą stałą czasową i uniemożliwia szybką komunikację. Są to jednak metody charakteryzujące się lepszą, niż w przypadku EEG, lokalizacją aktywności mózgu. Do największych zalet EEG należą: ocena aktywności mózgu dokładnie w chwili rejestracji sygnału, −−możliwa praca w wielu warunkach środowiskowych, −−niski koszt realizacji w porównaniu z innymi metodami, −−względnie łatwe użytkowanie. Akwizycja sygnału EEG wykorzystuje elektrody naklejane na skórę głowy za pomocą żelu oraz nakładane na głowę czepki, kaski lub opaski z suchymi elektrodami. Pomierzony sygnał przekazywany jest do elektroencefalografu, gdzie jest wzmacniany i w postaci cyfrowej przekazywany do komputera. Pomiary mogą być prowadzone synchronicznie (wymagają jednak znajomości chwili wystąpienia oczekiwanej aktywności mózgu) lub asynchronicznie (wymagają ciągłej analizy i klasyfikacji sygnału aktywności mózgu) [3]. Badania elektroencefalograficzne wykonywane współcześnie w medycynie polegają na rejestrowaniu zmian potencjału elektrycznego pochodzącego od aktywności neuronów kory mózgowej i po wzmocnieniu ich potencjałów, zapisanie tych sygnałów w postaci elektroencefalogramu (rys. 1). Liczba elektrod w badaniach medycznych waha się od kilku do 128 elektrod. Rejestrowany za pomocą elektrod potencjał jest wypadkową wszystkich potencjałów, generowanych przez różne źródła pola elektrycznego. Zatem oprócz potencjałów pochodzących z wnętrza czaszki, charakteryzujących aktywność mózgu, są to także sygnały elektrofizjologiczne oraz sygnały pochodzące od zakłóceń zewnętrznych (np. od sieci elektroenergetycznej). Największy wpływ na otrzymany sygnał mają komórki piramidalne. Komórki te mają zwykle podobną orientację, a wiele z nich jest pobudzanych jednocześnie (synchronicznie), dzięki czemu wytwarzane przez nie pole elektryczne ma szansę zostać wykryte, w przeciwieństwie do pola wytwarzanego przez dipol pojedynczego neuronu, które jest zbyt słabe [13]. Istnieje bardzo szeroki wachlarz cech charakterystycznych sygnałów mierzonych za pomocą EEG, które wykorzystywane mogą być w interfejsach mózg–komputer urządzeń technicznych [2], jednak projektując taki system, aby stał się funkcjonalny, należy brać pod uwagę przeszkody i problemy, z jakimi można się zetknąć. Główne niedogodności to szumy i odchylenia, bardzo rozbudowane wektory cech, informacje o czasie komunikacji i jej niestacjonarność [4]. Elektryczny sygnał mózgowy jest sygnałem indywidualnym dla każdej osoby, ale ulega znacznym zmianom w zależności od czynników działających na daną osobę w danej chwili. W analizie tych sygnałów brane są pod uwagę zasadniczo dwa parametry - amplituda i częstotliwość. Przy podziale ze względu na częstotliwość wyróżnia się pasma, które są związane z określonymi stanami lub bodźcami. Nie można precyzyjnie określić ich granic ani funkcji, ponieważ silnie zależą od cech osobniczych, a wiele aspektów działania mózgu jest też nadal nieznanych. Wyróżnia się następujące specyficzne pasma (nazywane też rytmami, falami lub falami EEG) [13, 3] - gamma (powyżej 40 Hz), beta (od 12 Hz do ok. 28 Hz), alfa (od 8 Hz do 13 Hz), mu (od ok. 8 Hz do 12 Hz), theta (od 4 Hz do 7 Hz) oraz delta ( od ok. 0,5 Hz do 3 Hz). W interfejsach mózg–komputer można więc wykorzystać kilka charakterystycznych pasm potencjałów sygnału EEG, wywoływanych pewnymi procesami myślowymi lub koncentracją uwagi użytkownika na określonym zdarzeniu. Część z tych charakterystycznych cech, na przykład potencjał P300 lub stabilny potencjał wywołany wzrokowo (ang. Steady-State Visually Evoked
Rys. 1. Podział rytmów fal występujących w analizie sygnału EEG, w zależności od różnych czynników psychofizycznych [13] Fig. 1. Classification of rhythms that appear in EEG signal analysis depending on various psychofisical factors
Potential, SSVEP), jest w naturalny sposób wywoływana przez zewnętrzną stymulację, natomiast inne, jak potencjały mózgowe związane z ruchem (ang. Sensomotorical, SMR) lub potencjały korowe wolnozmienne (ang. Slow Cortical Potentails shifts, SCPs) muszą zostać wytrenowane przez użytkownika, przez samoregulację oraz funkcje oparte na sprzężeniu zwrotnym [3]. W diagnostyce medycznej stosuje się badanie tzw. potencjałów wywołanych (ang. Evoked Potentials, EP), powstających w efekcie wystąpienia aktywności mózgu pod wpływem określonego bodźca – najczęściej wzrokowego, słuchowego lub czuciowego.
3.1. Potencjał P300
Nazwa potencjału związana jest z czasem, po którym występuje zmiana jego wartości na bodziec wzrokowy, słuchowy lub sensomotoryczny. Typowy pojedynczy pik potencjału ma amplitudę z zakresu od 2 μV do 5 μV i leży poniżej aktywności „tła” mózgu, co oznacza, że pojedynczy impuls P300 opisany jest bardzo niskim poziomem stosunku wartości sygnału do szumu. Potencjał ten najsilniej obserwowany jest w płacie ciemieniowym. Wykorzystanie potencjału P300 w interfejsach BCI jest jedną z najprostszych koncepcji budowy takiego interfejsu. Najczęściej wywoływany jest z użyciem wyświetlanej na ekranie tablicy znaków [11]. Wywoływanie zmian potencjału polega na losowym podświetlaniu wierszy i kolumn z częstotliwością od kilku do kilkudziesięciu błysków na sekundę. Zadaniem użytkownika interfejsu jest skoncentrowanie uwagi na wybranym znaku, po czym następuje uśrednienie rejestrowanego potencjału P300, co pozwala na określenie, który znak został wybrany. System o takiej formie działania można zatem wykorzystać do pisania tekstu. Jakość działania interfejsu BCI warunkowana jest przez czas trwania bodźca, kolor podświetlania, kolor pola, kolor tła oraz cechy psychofizyczne użytkownika. System wymaga zatem kalibracji celem dopasowania parametrów klasyfikacji do cech użytkownika. Przykładem wykorzystania potencjału P300 może być system BCI2000 [16].
3.2. Potencjały wywoływane wzrokowo
Potencjały SSVEP wywoływane wzrokowo są coraz częściej stosowane w interfejsach BCI ze względu na ich wysoką dokładność, bardzo krótki czas treningu oraz wysoki poziom transferu, duży stosunek wartości sygnału do szumu oraz dość dobrą odporność na artefakty. Zostały zastosowane po raz pierwszy w Laboratory Air Force w Stanach Zjednoczonych w aplikacji wymagającej wyboru między dwoma wirtualnymi przyciskami, migającymi z różnymi częstotliwościami. Są to potencjały, które pojawiają się w korze wzrokowej po stymulacji bodźcem świetlnym o określonej częstotliwości migotania. Pobudzenie siatkówki bodźcem świetlnym o ustalonej częstotliwości z zakresu od około 3,5 Hz
17
Interfejs mózg–komputer w zadaniu sterowania robotem mobilnym
4. Komercyjne rozwiązania i komponenty BCI
do 75 Hz powoduje pojawienie się sygnału o takiej właśnie częstotliwości lub jej wielokrotności na elektrodach umieszczonych w obszarze kory wzrokowej [2]. Jako obiekty świetlne stanowiące bodźce stymulujące w SSVEP można stosować specjalne matryce. Jeśli użytkownik skupi swój wzrok na wybranym polu, pojawia się sygnał o określonej częstotliwości w obszarze kory wzrokowej. Analizując widmo sygnału można określić, na co patrzył użytkownik. Punkty, na których użytkownik skupia wzrok powiązane są z akcjami, można zatem określić, jakie działanie miał użytkownik na myśli. Do wad systemów wykorzystujących potencjały SSVEP, jak również potencjał P300, należy zmęczenie i dyskomfort, które mogą powodować bodźce stymulujące. W skrajnych przypadkach mogą one doprowadzić do wywołania ataku epilepsji. Ponadto temu rodzajowi stymulacji może towarzyszyć efekt habituacji, czyli przywykania, polegający na tym, że w przypadku bodźca powtarzającego się wielokrotnie odpowiedź układu nerwowego staje się coraz słabsza [7].
4.1. System Emotiv Epoc
Jednym z bardziej skomplikowanym, ale według jego twórców zapewniającym duże możliwości jest system Emotiv EPOC. Nazwa systemu jest akronimem, jest to pochodna słowa „epoka” (ang. epoch), co sugerować ma (wyraźnie promocyjnie), że proponowane rozwiązanie jest początkiem nowej ery technologicznej.
3.3. Potencjały mózgowe związane z ruchem
Potencjały mózgowe związane z ruchem to fale mózgowe typu mu o zakresie częstotliwości od 8 Hz do 12 Hz oraz beta od 12 Hz do 28 Hz. Największa aktywność pojawia się w stanie spoczynku ruchowego (motorycznego), oraz w przypadku, gdy badana osoba nie wyobraża sobie żadnego ruchu. Dowiedziono bowiem, że osoba badana nie musi wykonywać ruchu, aby wygenerować odpowiedni sygnał – wystarczy samo jego wyobrażenie [3]. Wyniki tych badań pozwalają założyć, że potencjały mózgowe związane z ruchem mogą być wykorzystywane w aplikacjach BCI związanych z urządzeniami technicznymi przeznaczonymi dla osób niepełnosprawnych, które nie mogą wykonywać żadnych ruchów. Analogiczne zmiany w sygnale EEG zostały zaobserwowane także w chwili, kiedy badana osoba obserwowała ruch wykonywany przez inną osobę. Lokalizacja elektrod rejestrujących sygnał związany z ruchem zależy od wykonywanej lub zamierzonej aktywności wybranego mięśnia. Przykładowo ruch lewej ręki powoduje wystąpienie sygnału w okolicach elektrody C4 - w prawej półkuli, natomiast ruch prawej ręki powoduje wystąpienie sygnału w lewej półkuli, w okolicach elektrody C3 międzynarodowego systemu 10-20 rozmieszczenia elektrod [2, 3]. Rejestrowany sygnał ma postać spadku aktywności (ang. Event-Related Desynchronisation, ERD) lub wzrostu aktywności (ang. Event-Related Synchronisation, ERS). Wzrost aktywności powstaje tuż po wykonaniu ruchu [10]. Wadą interfejsów wykorzystujących pasma ruchowe (motoryczne) jest to, że powstające sygnały są słabe, zatem aby wykryć znaczące zmiany często wykorzystuje się wielokrotne powtórzenia w celu uśrednienia wyników i polepszenia klasyfikacji. Ponadto interfejsy BCI tego typu wymagają treningu. Aby użytkownik mógł skutecznie wyobrazić sobie ruch, musi uczyć się nawet przez kilka dni lub nawet tygodni. Formą nauki, która jest stosowana w takim przypadku jest neurofeedback, gdzie użytkownik obserwując przebiegi zmian wartości swoich potencjałów mózgowych próbuje optymalizować wyobrażenie sobie konkretnego ruchu. Interfejsy oparte na SMR mogą być zarówno interfejsami synchronicznymi lub asynchronicznymi. Interfejsy asynchroniczne mogą być wykorzystane na przykład w zadaniu sterowania wózkiem inwalidzkim, jednak aby się nimi posługiwać należy przejść długotrwały trening, potrzebny jest także bardzo skuteczny system akwizycji i przetwarzania sygnału EEG [1]. W porównaniu z potencjałem P300 potencjał ruchowy SMR charakteryzuje się znacznie mniejszą dokładnością oraz wydłużonym czasem treningu. Powodem może być to, że w potencjale P300 parametry, kontrolujące kształt sygnału nie zmieniają się tak dynamicznie, jak w SMR. Ponadto możliwe są tam proste techniki uśredniania, pozwalające zwiększyć stosunek sygnału do szumu.
18
P
O
M
I
A
R
Y
•
A
U
T
O
M
Rys. 2. Lokalizacja elektrod w kasku Emotiv EPOC [http://emotiv.com/] Fig. 2. Location of electrods in Emotiv EPOC headset
Kask EPOC wyposażony jest w 14 elektrod aktywnych i dwie elektrody referencyjne (rys. 2). Większość elektrod kasku zlokalizowana jest w okolicach płata czołowego, prawdopodobnie podyktowane jest to tymi samymi względami, jak przy lokalizacji elektrod w systemie NeuroSky (sekcja 4.4) – mniejsze zakłócenia spowodowane jest mniejszym owłosieniem w tym obszarze. Sensor, podobnie jak opisywany poprzednio, działa bezprzewodowo, co umożliwia użytkownikowi swobodę ruchu. Ponadto kask wyposażony jest w żyroskop, dzięki czemu użytkownik może kontrolować kursor lub kamerę wykorzystując ruchy głową. Dużą zaletą zarówno kasku Emotiv EPOC, jak i innych komercyjnych kasków i opasek jest czystość pracy - sensor, inaczej niż czepki medyczne EEG, nie wymaga stosowania żelu w celu przymocowania elektrod - należy do rozwiązań suchych. Wygodę stosowania kasku Emotiv EPOC porównuje się nawet do wygody użycia zwykłych słuchawek. Kask Emotiv EPOC można przystosować do różnych rozmiarów i kształtów głowy, nie zaleca się jednak wykonywania gwałtownych ruchów głową, które mogą spowodować przesunięcie elektrody z właściwego położenia. Cena kasku jest dużo niższa niż w przypadku profesjonalnych urządzeń medycznych. Możliwości kasku Emotiv EPOC, w aspekcie odczytu intencji ruchowych użytkownika, są większe niż w przypadku innych komercyjnych systemów. Oprócz poziomu koncentracji możliwy jest pomiar pobudzenia aktywności ruchowych mózgu. Użytkownik systemu może wyobrazić sobie różne czynności - podnoszenie, upuszczanie, popychanie lub obracanie obiektu. System Emotiv EPOC umożliwia nie tylko odczytaniae bezpośredniej aktywności mentalnej użytkownika, ale także aktywności niejawnej. Niektóre z emocji, które system może odczytać to: podekscytowanie, napięcie, znudzenie, zaangażowanie, medytacja, także frustracja. Sygnał emitowany przez ludzki mózg w chwili frustracji jest różny w zależności od osobnika, dlatego zanim wykorzystane zostaną te właściwości systemu, potrzebny jest trening. Poza akcjami związanymi z ruchem obiektów oraz odczytem emocji, możliwe jest także odczytanie mimiki i ekspresji twarzy. Według producenta, używając kasku Emotiv EPOC można zarejestrować między innymi: mruganie, śmiech, zaskoczenie, uśmiech, zdenerwowanie, grymaszenie, nawet uśmiech z wyrazem wyższości.
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Magdalena Górska, Mariusz Olszewski
4.2. System Muse Interaxon
Opaska systemu Muse Interaxon (rys. 3) umożliwia badanie zmian między dwoma stanami - koncentracją oraz zrelaksowaniem. Pomiar następuje w czasie rzeczywistym, co stanowi bardzo istotny aspekt interfejsów BCI. Opaskę cechuje prosty, ale bardzo elegancki wygląd. Wokół czoła, na cienkiej opasce umieszczonych jest pięć elektrod mierzących aktywność mózgu użytkownika, natomiast za uszami, podobnie jak w przypadku opasek konkurencyjnych firm, opaska ma dwa sensory mierzące potencjały referencyjne. Według producenta sensor umożliwia rejestrowanie zmian 5 pasm aktywności mózgu: alfa, beta, gamma, delta oraz theta. Należy podkreślić, że sensor pozwala jedynie na pomiar typu aktywności mózgu, nie jest to jednak informacja, o stanach pośrednich, a więc o czym dokładnie myśli użytkownik. Kolejnym podobieństwem do opasek MindWave oraz MindSet jest sposób komunikacji: Muse Interaxon wykorzystuje protokół Bluetooth, łączy się za jego pomocą bezprzewodowo z komputerem, smartphonem lub tabletem.
czonym symbolem Fp1 międzynarodowego systemu 10–20 rozmieszczenia elektrod [2]. Kask MindWave pozwala identyfikować stany umysłu takie jak relaksacja, uwaga lub mruganie oczami. Razem z kaskiem użytkownik otrzymuje płytę z zestawem gier, które umożliwiają trening umysłu.
Rys. 4. Kask MindWave NeuroSky wyposażony w sensor umieszczany na czole oraz klips mierzący potencjał referencyjny, umieszczany na lewym uchu 6 Fig. 4. MindWave NeuroSky headset equipped with the sensor placed on the forehead, and ear clip measuring reference potential4
Rys. 3. Opaska Muse Interaxon [http://www.choosemuse.com/] Fig. 3. Muse Interaxon headset
Firma Interaxon to grupa artystów, inżynierów, naukowców oraz projektantów, która powstała już w 2007 r. i przez ostatnie 8 lat pracowała nad aplikacją BCI. W 2007 r. urządzenie Muse było zdecydowanym faworytem na rynku komercyjnych interfejsów BCI. Według twórców Muse wyróżnia się na tle konkurencji integracją między zaangażowaniem intelektualnym a emocjonalnym w celu uzyskania najlepszego efektu.
4.3. Rozwiązania Open-source
Interesującym rozwiązaniem na rynku interfejsów mózg–komputer są także open-source’owe rozwiązania OpenBCI2. Tym, co wyróżnia te produkty wśród innych, oprócz zasady otwartego rozpowszechniania jest także większa uniwersalność. Jak informują twórcy na portalu kickstarter5, rozwiązanie OpenBCI, w przeciwieństwie do pozostałych istniejących na rynku interfejsów, umożliwia dowolne przystosowanie do własnych wymagań przez udostępnienie wszystkich składników rozwiązania. Każdy, kto ma pomysł na wykorzystanie interfejsu, może uczestniczyć we współtworzeniu algorytmów, co sprzyja rozwojowi tej wciąż nowej na rynku dziedziny techniki. Pomysłodawcy zapraszają do współpracy zarówno naukowców, badaczy, studentów, lekarzy i wszystkich chętnych i zainteresowanych projektem.
4.4. System MindWave NeuroSky
Jednym z najdłużej obecnych na rynku komercyjnych rozwiązań BCI jest kask MindWave3, opracowany przez firmę NeuroSky (rys. 4). Sensor mierzy częstotliwość fal mózgu w miejscu ozna-
Firma Neurosky – producent sensora MindWave – rozpoczęła prace rozwojowe w dziedzinie interfejsów BCI, a w szczególności wpływu neurotreningu na leczenie schorzenia ADHD, już w 2007 r. Opublikowano raport, w którym porównano działanie kasku firmowego z urządzeniami klasy badawczo-medycznej. Wynik testu okazał się zaskakujący – badania wykazały 90-96 % zgodność wyników pomiarów, w zależności od okoliczności oraz użytkownika lub pacjenta. Ponadto firma Neurosky jest partnerem w badaniach prestiżowych uniwersytetów i instytucji naukowych. Ze względu na umieszczenie elektrody w punkcie Fp1, rejestrowany sygnał (oprócz sygnałów związanych z aktywnością mózgu) zawierać może zakłócenia oraz artefakty związane zarówno z urządzeniami towarzyszącymi badaniom, jak i z samym użytkownikiem. Zakłócenia mogą być wywołane na przykład przez ruch głowy powodujący skurcze mięśni, co także jest odzwierciedlane w sygnale EEG. Sensor MindWave wykorzystuje punkt referencyjny, traktowany jako pewnego rodzaju uziemienie (ang. Ground Reference Point, GRP), którego rolę pełni tu klips umieszczony na uchu użytkownika. Pozwala to na względnie dobre odseparowanie sygnałów użytecznych od szumów i zakłóceń. Technologia wykonania kasku MindWave pozwala na wykorzystanie tzw. suchych elektrod (ang. Dry Sensor Technology). Według specyfikacji firmowej pozwala to na wykrywanie różnych biosygnałów w zależności od tego, gdzie umieszczona jest elektroda pomiarowa. Spadki napięcia zmierzone w dwóch punktach - na skórze czoła oraz na lewym uchu - są od siebie odejmowane i na wyjściu uzyskuje się jednokanałowy sygnał EEG. Otrzymany sygnał jest następnie wzmacniany 8000 razy, tak silnie ze względu na to, że jest to sygnał o bardzo słabej wartości. W kolejnym kroku następuje filtracja, która ma na celu uzyskanie sygnału z zakresu 1-50 Hz. Po procesie filtracji sygnał jest próbkowany z częstotliwością 128 Hz lub 512 Hz. Sygnał analizowany jest w każdej sekundzie z użyciem algorytmów opracowanych przez
2 https://www.kickstarter.com/projects/openbci/openbci-an-open-source-brain-computerinterface-fo?ref=search 3 http://store.neurosky.com/products/mindwave-1
4 http://neurosky.com/
19
Interfejs mózg–komputer w zadaniu sterowania robotem mobilnym Poziom skupienia podczas rozwiązywania zadań matematycznych badano także wykorzystując aplikację SpeedMath. Gra polega na wykonywaniu prostych operacji dodawania, odejmowania oraz w wyższych poziomach także mnożenia i dzielenia. Aktywność mózgu związana z zadaniami pamięciowymi monitorowano używając aplikacji SpadeA, wymagającej od użytkownika zapamiętywania położenia elementu i odnalezienia go po zmianie ułożenia elementów. Z początkowych obserwacji wynikało także, że wpływ na poziom uwagi mogą mieć odczuwane emocje, jak na przykład smutek lub gniew. Ze względu na subiektywność testów, przeprowadzono je na grupie 7 osób. Jak wcześniej wspomniano możliwości umysłowe są indywidualną cechą każdego człowieka, zatem każdy osiąga różne wyniki. Wpływ na osiągane wyniki może mieć także kondycja fizyczna i psychiczna osoby badanej. Testując kask na grupie użytkowników zanotowano także spostrzeżenia na temat aktualnego stanu, w jakim znajdowali się testerzy oraz ich uwagi dotyczące wygody użytkowania kasku MindWave, komfortu podczas wykonywania zadań oraz kondycji psychicznej po ich wykonaniu. Przeprowadzone testy miały kilka poziomów trudności. Każdy kolejny poziom wymagał od użytkownika coraz wyższego poziomu uwagi. Testy przeprowadzono także na autorce pracy. Motywacją do wykonania testów było sprawdzenie, jakie czynniki mają wpływ na osiąganie dobrych wyników we wspomnianych aplikacjach lub grach. Głównym założeniem, które testy miały udowodnić było to, że im dłużej korzysta się z nich, tym są osiągane lepsze wyniki
Rys. 5. Wyniki pomiarów wskaźnika poziomu skupienia podczas rozwiązywania zadań matematycznych Fig. 5. Effect of ATTENTION eSense measurements meanwhile accomplishing mathematical task
firmę NeuroSky tak, aby jakość sygnału była jak najlepsza oraz by sygnał wykorzystywany w dalszych etapach badań był w jak największym stopniu sygnałem użytecznym. Konwersja sygnału EEG na napięcie odbywa się zgodnie z zależnością
V = [raw_value · (1,8/4096)] / 2000,
(1)
gdzie: raw_value – surowy sygnał EEG.
5. Robot mobilny sterowany za pomocą potencjałów ruchowych
Rys. 6. Wynik pomiaru wskaźnika poziomu skupienia podczas wykonywania zadania pamięciowego, wykorzystując aplikację SpadeA Fig. 6. Effect of attention measurement meanwhile accomplishing memory task, using SpadeA application
5.1. Przygotowanie systemu MindWave NeuroSky
Pierwszym krokiem w przygotowaniu sensora Mindwave do sterowania robotem mobilnym było sprawdzenie jego faktycznych właściwości. W tym celu wykorzystano gry oraz programy dostępne z kaskiem, które służą do treningu umysłu, bazując na pomiarze poziomu uwagi użytkownika. Zgodnie z protokołem MindSet, informacje o poziomie skupienia (ang. Attention) lub rozluźnienia (ang. Meditation) użytkownika przekazywane są przez dwa parametry ATTENTION eSense oraz MEDITATION eSense. W celu oceny użyteczności kasku MindWave oraz wyszczególnienia czynności, przy których poziom skupienia jest widocznie wyższy od poziomu relaksu wykorzystano aplikacje dostarczane z systemem. Jedną z aplikacji jest Meditation Journal5 - program przeznaczony do monitorowania codziennych stanów umysłu użytkowników. W trakcie treningu użytkownik może nauczyć się osiągać opisane stany w sposób bardziej skuteczny. Założono, że wysoki stan skupienia uwagi można osiągnąć podczas rozwiązywania zadania matematycznego w pamięci albo na kartce (rys. 5), podczas rozwiązywania zadań pamięciowych (rys. 6), także podczas czytania tekstu w języku obcym (rys. 7). Weryfikacji tych założeń dokonano przez pomiar skupienia użytkowników wykonujących powyższe czynności za pomocą wspomnianej aplikacji Meditation Journal.
Rys. 7. Wynik pomiarów wskaźnika poziomu skupienia podczas czytania tekstu w języku obcym Fig. 7. Effect of ATTENTION eSense measurements meanwhile reading a text in a foreign language
5 http://store.neurosky.com/products/meditation-journal
20
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Magdalena Górska, Mariusz Olszewski
Rys. 8. Wyniki pomiarów wskaźnika poziomu zrelaksowania (rozluźnienia) podczas odpoczynku Fig. 8. Effect of MEDITATION eSense measurements meanwhile relaxing
osiąga przy zasilaniu 6 V. Serwosilniki wyposażone są w trzy kable: czerwony, brązowy oraz pomarańczowy. Zgodnie z ogólnymi zasadami kabel czerwony oznacza „+” i powinien być podłączony do wyjścia 5 V płytki Arduino, kabel brązowy (w niektórych przypadkach może także być czarny) podłączany jest do uziemienia GND, natomiast kabel pomarańczowy (może być także biały lub żółty) to kabel, który podłączono do cyfrowego pinu I/O dla transportu danych między serwosilnikiem a płytką Arduino. Wysterowanie serwosilników z poziomu Arduino polega na podaniu sygnału o wartości „HIGH” na odpowiednie wyjścia cyfrowe. W celu wykorzystania platformy Arduino jako elementu robota potrzebne jest zapewnienie bateryjnego zasilania urządzenia, zastępującego kabel USB. W tym celu wykorzystano baterię o napięciu 9 V, ponieważ zalecany zakres napięć obsługiwany przez Arduino to 7-12 V. Bateria zasila także elementy współpracujące z płytką Arduino: serwosilniki oraz urządzenie współpracujące z kaskiem Mindwave (rys. 11). Kolejnym elementem, w który wyposażony został robot są diody LED. Ich podstawowym zadaniem jest umożliwienie użytkownikowi obserwowania efektów sterowania robotem. Wykorzystano diody w trzech kolorach. Dla utworzenia niezbędnych połączeń elektrycznych skorzystano z płytki prototypowej, narzędzia stosowanego w elektronice pozwalającego na szybkie prototypowanie obwodów drukowanych, bez konieczności ich każdorazowego przygotowywania i wytrawiania. Łącząc układ zwrócono uwagę, aby masy (GND) wszystkich elementów były ze sobą połączone. Podwozie robota zostało wykonane z płyty PCV.
– zatem podczas uczenia się, rozwijane są równolegle zdolności koncentracji. Testy potwierdziły zróżnicowanie wyników wśród grupy uczestników pozwalając oszacować, w jakim stopniu wyniki zależą od indywidualnych predyspozycji osoby badanej. Przeprowadzone badania wykazały, że rozbieżność wyników dla różnych użytkowników jest duża, ale użytkownicy korzystający dłużej z danej aplikacji lub gry, osiągają znacząco lepsze rezultaty koncentracji.
5.2. Platforma programistyczna Arduino Uno
Dla robota mobilnego, zbudowanego w ramach projektu [9] (rys. 9), przewidziano wykorzystanie platformy programistycznej Arduino Uno6. Platforma ta jest środowiskiem programistycznym dla systemów wbudowanych, bazującą na projekcie Open Hardware przeznaczonym dla mikrokontrolerów montowanych w pojedynczym obwodzie drukowanym, z wbudowaną obsługą wejścia/wyjścia, wykorzystujących standaryzowany język programowania [12]. Płyta Arduino składa się z 8-bitowego mikrokontrolera Atmel AVR z uzupełniającymi elementami ułatwiającymi programowanie oraz włączanie innych układów. Oficjalne płyty Arduino wykorzystują układy z serii megaAVR – ATmega8, ATmega168, ATmega328 oraz ATmega1280 i ATmega 2560. Płyty Arduino (rys. 10) są programowane za pośrednictwem interfejsu szeregowego RS-232, sprzętowa implementacja zależna jest jednak od konkretnej wersji środowiska. Zawierają prosty obwód inwertera do konwersji sygnału między interfejsami RS-232 i TTL. Wykorzystane w projekcie [9] płyty Arduino są programowane przez USB, realizowany za pomocą adaptera USB-to-Serial, np. układ FTDI FT232. Robot napędzany jest za pomocą dwóch serwosilników elektrycznych PowerHD AR-360HB. Maksymalną prędkość robot
6 http://pl.wikipedia.org/wiki/Arduino
Rys. 9. Robot mobilny sterowany z wykorzystaniem opaski MindWave NeuroSky, z wykorzystaniem pomiaru poziomu skupienia [9] Fig. 9. Mobile robot controlled with NeuroSky indwave headset MindWave, using attention measurements
Rys. 10. Mikrokontroler Arduino Uno, wykorzystany przy budowie trójkołowego robota mobilnego, sterowanego za pomocą kasku MindWave [www.arduinoclassroom.com] Fig. 10. Microcontroler Arduino Uno, used to build three-wheel mobile robot, controlled with MindWave headset
21
Interfejs mózg–komputer w zadaniu sterowania robotem mobilnym
Rys. 12. Format pakietu danych systemu MindWave NeuroSky Fig. 12. The format of the package of data of MindWave NeuroSky
Rys.11. Układy elektroniczny i elektryczny sterownika platformy jezdnej robota Fig. 11. Electronic and electrical connections of mobile robot
Interpretacja poziomu uwagi na podstawie tych wartości może być różna w zależności od aplikacji. Bardziej szczegółowo informacje o poziomie skupienia opisane są przez dwa parametry: ATTENTION eSense oraz MEDITATION eSense. Są to parametry przesyłane z częstotliwością raz na sekundę w postaci jednego bajtu informacji. Warto zwrócić uwagę, że poziom rozluźnienia odnosi się tu do rozluźnienia psychicznego a nie fizycznego, choć najczęściej rozluźnienie mięśni prowadzi także do zrelaksowania umysłu użytkownika. Kolejne dwa bajty informacji to dane związane z pasmami fal mózgowych. Mogą przyjmować wartości z zakresu od -32768 do 32767, a ich raportowanie odbywa się raz na 2 ms, co daje około 512 odczytów w ciągu sekundy. Parametr opisujący poszczególne rodzaje pasm to ASIC_EEG_POWER, składa się z ośmiu trzybajtowych pakietów liczb, odpowiadających pasmom delta, theta, low-alpha, high-alpha, low-beta, high-beta, low-gamma oraz high-gamma [3, 9]. Parametr ten jest odczytywany raz na sekundę. Ostatni z parametrów opisuje mrugnięcie okiem. Zakres wartości, jakie może osiągnąć to liczby od 1 do 255. Parametr przesyłany jest, jeśli nastąpiło mrugnięcie. Opisane powyżej dane przesyłane są z wykorzystaniem systemu ThinkGear do odbiornika systemu z wykorzystaniem specjalnych pakietów. Pakiety te składają się z trzech części: −−nagłówka, zawierającego bajty synchronizujące, rozpoczynające pakiet oraz bajt zawierający informację o długości pakietu danych, −−treści pakietu, −−sumy kontrolnej. Odbiornikiem przesyłanych pakietów może być komputer, mikroprocesor lub każde inne urządzenie, które ma funkcję odbioru seryjnego strumienia bajtów. W celu uzyskania bezpośredniej współpracy między kaskiem MindWave a platformą Arduino, stanowiącą bazę sterownika robota, wprowadzono pewne zmiany w połączeniach. Usunięto połączenie z USB tak, aby umożliwić odczyt danych przez piny TX oraz RX. Następnie piny w urządzeniu wspomagającym kask (ang. MindWave Dongle, rys. 13) połączono z pinami na płytce Arduino, pierwszy z nich oznaczając czerwonym kablem, drugi kablem zielonym (jako TX), trzeci - kablem białym (jako RX), czwarty - kablem czarnym (jako GND). Połączenie pomiędzy pinem RX i płytką Arduino wymagało dodatkowego zabezpieczenia przez zastosowanie rezystorów tak, aby podawane przez Arduino napięcie nie było zbyt wysokie [9].
5.3. Sterownik robota mobilnego
Metodologia systemu ThinkGear, stanowiąca podstawę budowy urządzeń firmy NeuroSky, w tym sensora MindWave, umożliwia odczyt i przetwarzanie potencjałów mózgowych, sprzętowo obejmuje elektrodę potencjału mierzonego umieszczoną na czole użytkownika, klips – umożliwiający pomiar potencjału referencyjnego oraz chip przetwarzający uzyskane dane do postaci cyfrowej. Komunikacja z kaskiem MindWave oraz obsługa urządzenia współpracującego w formie pendrive’u zdefiniowane są w specjalnych protokołach komunikacyjnych, udostępnionych przez firmę NeuroSky. Informacje przesyłane są w formie strumienia bajtów przez połączenie Bluetooth, z wykorzystaniem standardu Bluetooth Serial Port Profile (SPP). Dane przesyłane podczas pracy urządzenia w formie bajtów podzielić można na kilka grup (rys. 12). Jeden bajt przeznaczony jest na informację o jakości sygnału (POOR_SIGNAL Quality), parametr przyjmuje wartości z zakresu od 0 do 200. Jeżeli wartość jest różna od zera, oznacza to, że sygnał jest zakłócany. Im wyższa jest wartość tego parametru, tym więcej szumu wykryto w sygnale. Maksymalna wartość oznacza, że elektroda nie styka się ze skórą użytkownika. Standardowo wartość ta przesyłana jest co sekundę. Przyczyny słabego sygnału mogą być różne, m.in. urządzenie jest niepoprawnie założone, elektrody nie stykają się odpowiednio ze skórą głowy użytkownika (co może być spowodowane na przykład przez włosy), użytkownik kasku zbyt intensywnie się porusza, użytkownik znajduje się w otoczeniu, w którym występują zakłócenia elektrostatyczne lub sygnał EEG jest silnie zakłócany przez inne biometryczne sygnały - np. EMG, EKG/ECG, EOG. Pewna liczba zakłóceń w sygnale jest nieunikniona, dla użytkowników niemedycznych nie stanowi to jednak dużego problemu [9]. Druga grupa raportowanych danych przenosi informację o poziomie skupienia lub rozluźnienia (relaksu) użytkownika (ang. Attention and Meditation). Wskaźnik ten nazywany jest eSense i opisuje ogólny sposób interpretacji poziomu uwagi. Skala obejmuje wartości od 0 do 100, przy czym wartości z przedziału 40-60 traktowane są jako neutralne, wartości z przedziału 60-80 jako delikatnie wyższe i mogą być traktowane jako wyższe niż normalne, analogicznie wartości z przedziału 20-40 mogą być traktowane jako obniżone względem normalnych. Wartości z przedziałów 1-20 oraz 80-100 informują odpowiednio o bardzo niskim lub bardzo wysokim poziomie skupienia. Wartość 0 wskazuje, że system ThinkGear nie może oszacować poziomu uwagi użytkownika, co może być związane m.in. z bardzo wysokim poziomem zakłóceń w sygnale (POOR_SIGNAL Quality).
22
P
O
M
I
A
R
Y
•
A
U
T
O
M
6. Testy połączenia platformy Arduino i robota mobilnego W pierwszym etapie testów połączeń między kaskiem MindWave a platformą Arduino, wykorzystano diody LED jako sygnalizatory poszczególnych stanów. Zastosowano diody sygnalizujące o barwach: A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Magdalena Górska, Mariusz Olszewski −−czerwony – stan włączenia niezbędnych zespołów, płytki Arduino oraz kasku MindWave; −−żółty – stan nawiązania połączenia, w którym nie następuje jeszcze transmisja danych. Przykładowo jest to sytuacja, gdy kask MindWave jest włączony, ale nie jest jeszcze założony przez użytkownika, zatem nie są generowane potencjały mózgowe; −−zielony – stan rozpoczęcia transmisji danych, przy czym dioda zielona miga, jeżeli poziom uwagi użytkownika jest większy od wartości zerowej. Urządzenie Mindwave Dongle oraz sam kask MindWave wyposażone są także w diody. Po podłączeniu urządzenia wspomagającego do zasilania oraz włączeniu kasku przełącznikiem, na obydwu komponentach diody zapalają się na czerwono. Kiedy udaje się nawiązać połączenie bezprzewodowe między nimi, diody zapalają się na niebiesko. Motywacją do wybrania takiej metody testowania jest fakt, że diody LED, w przeciwieństwie do serwosilników robota, mogą bardzo szybko zmienić stan, dlatego łatwo można zaobserwować, czy połączenie oraz transmisja danych przebiegają poprawnie. W kolejnym kroku poziom skupienia użytkownika zostaje już odwzorowany przez ruch serwosilników robota.
Rys. 13. Piny połączeniowe MindWave Dongle, wykorzystane do połączenia z płytką Arduino Fig. 13. Connection pins used to connect MindWave Dongle with Arduino board
Dla odwzorowania ruchu robota z poziomu skupienia użytkownika wykorzystano specjalnie przygotowaną bibliotekę Servo.h, dostępną z platformy Arduino IDE. Zastosowanie biblioteki dawało dobre rezultaty podczas sterowania serwosilnikami bez połączenia z sensorem, praca napędów była wówczas stabilna. Według producenta systemu Arduino, zastosowanie biblioteki pozwala bardziej efektywnie sterować przepływem informacji niż stosując funkcję digitalWrite(), której wykonywanie chwilowo blokuje pozostałe funkcje programu. Funkcje biblioteki Servo.h rozwiązują ten problem bardziej skutecznie [9].
7. Podsumowanie Analiza komercyjnych rozwiązań BCI rozwijanych pospiesznie ,przede wszystkim ze względów komercyjnych w branży medycznej, potwierdza celowość podejmowania w ostatnim czasie prób wykorzystania ich także w automatyce i robotyce, w tym docelowo w ogólnodostępnych urządzeniach i maszynach. Na przykład doskonałym obszarem zastosowań nieinwazyjnego interfejsu mózg–komputer wydaje się być aktuatoryka elektrycznych lub pneumotronicznych urządzeń i robotów wspomagających osoby niepełnosprawne i chore oraz osoby zajmujące się ich pielęgnowaniem, rehabilitacją i leczeniem. Uzasadniają to także pozytywne wyniki realizacji opisanego w artykule projektu sterowania robotem mobilnym przy pomocy potencjałów mózgowych [9]. Istniejące, katalogowe kaski lub opaski BCI nie wymagają stosowania żelu w celu przymocowania elektrod, nie trzeba także korzystać z kosztownych, specjalistycznych wzmacniaczy sygnału
a ich obsługa przez użytkownika jest bardzo prosta. Zastosowany w projekcie [9] kask MindWave firmy NeuroSky jest jednym z najtańszych rozwiązań dostępnych na rynku. Był to główny powód, dla którego zdecydowano się na wybór właśnie tego urządzenia. Kolejnym argumentem, przemawiającym za jego wyborem, była dostępność protokołu MindSet [19] opisującego komunikację, format przekazywanych danych oraz metodę ich transformacji do postaci użytecznej w wybranej aplikacji. Właśnie ten protokół umożliwił odczyt danych z kasku MindWave oraz wykorzystanie otrzymanego sygnału do sterowania robotem. Kolejną zaletą wszystkich, opisanych w artykule rozwiązań BCI, w tym także wykorzystanego w projekcie [9], jest ich asynchroniczny tryb pracy. Aby uzyskać sygnał użyteczny nie jest wymagana stymulacja użytkownika żadnymi bodźcami zewnętrznymi, na przykład w postaci bodźców świetlnych lub akustycznych. Stosowanie tego typu stymulacji jest męczące dla osoby używającej interfejsu BCI. Oczywistą wadą wykorzystanego systemu BCI firmy NeuroSky jest dwuwartościowość informacji (skupienie, rozluźnienie uwagi użytkownika), a więc także dwuwartościowość sygnałów sterujących, które można użyć. Sensor MindWave wyposażony jest w tylko jedną elektrodę, umieszczaną na czole użytkownika oraz klips, generujący potencjał referencyjny. Odpowiada to, na przykład w odniesieniu do wspomnianej aktuatoryki urządzeń automatyki i robotyki, pracy typowych siłowników – wykorzystanie mechatroniczne BCI potrzebuje jednak sygnału wielowartościowego, pozwalającego na pracę aktuatorów serwomechanizmowych. Wymaga to dalszych badań i rozwoju interfejsu BCI [2, 9]. Na podstawie przeprowadzonych testów kasku MindWave oraz jego połączenia z mikrokontrolerem platformy Arduino stwierdzono, że odwzorowanie poziomu skupienia oraz rozluźnienia jest poprawne, a sygnał ten może być skutecznie wykorzystany do sterowania układem elektronicznym, w tym do sterowania robotem. W trakcie realizacji opisanego projektu wystąpiły dwa problemy [9]. Pierwszym był stosunkowo długi czas oczekiwania na połączenie i rozpoczęcie transmisji danych. Dotyczyło to zarówno łączenia kasku z mikrokontrolerem przez port USB w fazie uruchomienia systemu, jak i czas tego połączenia podczas ruchu robota. Czas od momentu nawiązania połączenia do momentu rozpoczęcie transmisji jest różny w zależności od wykonywanej próby, nie udało się niestety stwierdzić w wykonanych w projekcie badaniach przyczyn tego zachowania. Drugim problemem były zachowania zastosowanych silników napędu robota, wprowadzające zakłócenia pracy modułu odpowiedzialnego za komunikację z kaskiem, polegające na jej spowalnianiu, a nawet przypadkowym zrywaniu tej komunikacji. Zlikwidowano te zjawiska dzięki zastosowaniu kondensatora elektrolitycznego, połączonego równolegle z zasilaniem serwosilników oraz wprowadzeniu pewnych zmian do programu pracy systemu [9].
Bibliografia 1. Birbaumer N., Heetderks W., McFarland D., Peckham H., Schalk G., Donchin E., Quatrano L., Robinson C., Brain– Computer Interface technology: A review of the First International Meeting on Rehabilitation Engineering, “IEEE Transactions on Rehabilitation Engineering”, Vol. 8, 2/2000, 164–173, DOI: 10.1109/TRE.2000.847807. 2. Cegielska A., Olszewski M., Nieinwazyjny interfejs mózg– komputer dla zastosowań technicznych. Pomiary Automatyka Robotyka, R. 19, 3/2015, 5–14, DOI: 10.14313/PAR_217/5. 3. Cegielska A., Opracowanie możliwych realizacji interfejsu mózg–komputer. Praca magisterska, Politechnika Warszawska, 2015. 4. Lotte F., Congedo M., Lécuyer A., Lamarche F., Arnaldi B., A review of classification algorithms for EEG-based Brain–
23
Interfejs mózg–komputer w zadaniu sterowania robotem mobilnym 12. Karvinen T., Karvinen K., Make a mind-controlled Arduino robot. O’Reilly Media, Sebastopol, 2011. 13. Kołodziej M., Przetwarzanie, analiza i klasyfikacja sygnału EEG na użytek interfejsu mózg–komputer. Praca doktorska, Politechnika Warszawska, 2011. 14. Kołodziej M. i in., Interfejs mózg–komputer. Raport Instytutu Elektrotechniki Teoretycznej i Systemów Informacyjno-Pomiarowych, Politechnika Warszawska, 2011. 15. Kołodziej M. i in, Interfejs mózg–komputer: Wybrane problemy rejestracji i analizy sygnału EEG. Raport Instytutu Elektrotechniki Teoretycznej i Systemów Informacyjno-Pomiarowych, Politechnika Warszawska, 2011. 16. Schalk G., McFarland D., Hinterberg T., Birbaumer N., Wolpaw J., BCI2000: A general purpose Brain–Computer Interface (BCI) system. IEEE Transactions on Medical Engineering, Vol. 51, 6/2004, 1034–1043. 17. Schmidt A., Implicit human computer interaction through context. Personal and Ubiquitous Computing, Vol. 4, 2-3/2000, 191-199, DOI: 10.1007/BF01324126. 18. Zander T.O., Kothe C., Welke S., Roetting M., Utilizing secondary input from passive Brain-Computer Interfaces for enhancing Human-Machine Interactions. Lecture Notes in Computer Science, Vol. 5638, 2009, 759–771, DOI: 10.1007/978-3-642-02812-0_86. 19. [http://wearcam.org/ece516/mindset_communications_protocol.pdf] – MindSet Communications Protocol, 2010.
Computer Interfaces. Journal of Neural Engineering, Vol. 4, No. 2/2007, DOI: 10.1088/1741-2560/4/2/R01. 5. Donchin E., Spencer K.M., and Wijesinghe R., The mental prothesis: accessing the speed of a P300-based Brain-Computer Interface. “IEEE Transactions on Rehabilitation Engineering”, Vol. 8, No. 2/2000, 174–179. 6. Devlaminick D., Wyns B., Boullart L., Santens P., Otte G., Brain–Computer Interfaces: from theory to practice. ESANN’2009 – Advances in Computational Intelligence and Learning, Bruges, 2009. 7. Durka P. et al., Open projects for Brain-Computer Interfaces and signal analysis. Frontiers in Neuroinformatics. Conference Abstract: 2nd INCF Congress of Neuroinformatics, 2009. 8. George L., Lecuyer A., An overview of research on „passive” brain–computer interfaces for implicit human – computer interraction. Campus Universitarie De Beaulieu, 2007. 9. Górska M., Interfejs mózg–komputer w zadaniu sterowania robotem mobilnym. Praca magisterska, Politechnika Warszawska, 2015. 10. Górska T., Majczyński H., Mechanizmy sterowania ruchami dowolnymi, [w:] praca zbiorowa Górska T., Grabowska A., Zagrodzka J. (red.), Mózg a zachowanie, Wydawnictwo Naukowe PWN, 2000. 11. Jacob R.J.K., Legget J.J., Myers B.A., Pausch R., Interaction styles and input/output devices, “Behaviour and Information Technology”, 12(2), 1993.
Brain–computer interface in the task of mobile robot control Abstract: The paper presents modern method of communication between human and a machine,
using brain potentials – brain–computer interface. A development and properties of methods of human brain announcing with devices and machines were described. The project of interface used to control mobile robot was developed. Application was based on electroencephalography, dry headset enabling attention and relax level measuring was used as a sensor. Keywords: brain–computer interface, electroencephalography, mobile robot, control by the human brain
mgr inż. Magdalena Górska
dr hab. inż. Mariusz Olszewski, prof. PW
Studia inżynierskie w Politechnice Warszawskiej, studia magisterskie rozpoczęte na Universitat Politécnica de Valencia w programie Erasmus, kontynuacja studiów na Wydziale Mechatroniki Politechniki Warszawskiej. Praca magisterska na temat sterowania robotem mobilnym przez interfejs mózg– –komputer, wyróżniona w Konkursie Młodzi Innowacyjni prowadzonym przez Przemysłowy Instytut Automatyki i Pomiarów PIAP (2015), doskonałe, bliskie nagrodzonym miejsce w konkursie o Nagrodę Siemensa i Rektora Politechniki Warszawskiej Dla Absolwentów (2015). W 2013 r. rozpoczęła pracę zawodową jako instruktor robotyki w firmie Mały Inżynier, w 2014 r. – jako junior developer w firmie Polprox, zajmującej się automatyką domową i projektowaniem systemów inteligentnych budynków.
Pracownik Politechniki Warszawskiej od 1965 r., stypendysta Fundacji Alexandra v. Humboldta w latach 70., w 1978 r. organizuje pierwszą w Polsce konferencję naukową na temat robotyki przemysłowej, w 1985 r. WNT wydaje napisaną pod jego kierunkiem pierwszą polską monografię na temat maszyn manipulacyjnych, w minionym dziesięcioleciu wydawnictwo REA wydaje napisane pod jego kierunkiem pierwsze polskie podręczniki z zakresu mechatroniki: „Mechatronika” (2002), „Podstawy mechatroniki” (2006) oraz dwutomowe „Urządzenia i systemy mechatroniczne” (2009). Specjalista w zakresie napędów i sterowania maszyn i robotów przemysłowych. Dyrektor Instytutu Automatyki i Robotyki na Wydziale Mechatroniki Politechniki Warszawskiej w latach 1994–2012; od 2003 r. członek Rady Naukowej Przemysłowego Instytutu Automatyki i Pomiarów PIAP.
m.gorska90@gmail.com
24
P
O
M
I
m.olszewski@mchtr.pw.edu.pl
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015, 25–30, DOI: 10.14313/PAR_217/25
Zaawansowane metody sterowania kaskadowym układem zbiorników Piotr Bakun, Oskar Długoński, Robert Piotrowski
Politechnika Gdańska, Wydział Elektrotechniki i Automatyki, ul. G. Narutowicza 11/12, 80-233 Gdańsk
Streszczenie: W artykule analizowany jest układ trzech kaskadowo połączonych zbiorników
z elementami wykonawczymi i pomiarowymi. Zadanie sterowania polega na takiej regulacji przepływem wody za pomocą pompy oraz stopniem otwarcia zaworów, aby jak najdokładniej i jak najszybciej osiągnąć zadaną wysokość słupa cieczy w każdym ze zbiorników. Zaprojektowano trzy układy regulacji poziomu wody w każdym ze zbiorników z wykorzystaniem algorytmów: klasycznego PI, wieloobszarowego i odpornego z modelem. Przeprowadzono analizę porównawczą opracowanych algorytmów sterowania dla stałej i zmiennej trajektorii zadanej. Badania wykonano w środowisku MATLAB/Simulink, komunikującym się z obiektem rzeczywistym za pomocą karty pomiarowej zainstalowanej w komputerze PC. Słowa kluczowe: układ kaskadowy zbiorników, układ regulacji PI, wieloobszarowy układ regulacji, odporny układ regulacji z modelem
1. Wprowadzenie Badanym obiektem są połączone kaskadowo trzy różne zbiorniki. Znajdują się one w laboratorium Katedry Inżynierii Systemów Sterowania (Wydział Elektrotechniki i Automatyki, Politechnika Gdańska) i zostały zakupione od firmy INTECO [1]. Urządzeniami wykonawczymi są pompa oraz trzy pary zaworów, po jednej dla każdego ze zbiorników. Każda para zaworów składa się z zaworu ręcznego i sterowanego. Pompa odpowiedzialna jest za dostarczanie wody ze zbiornika magazynującego do górnego zbiornika, natomiast zawory odpowiadają za przepływ wody między poszczególnymi rezerwuarami. Urządzeniami pomiarowymi są piezorezystancyjne czujniki ciśnienia, po jednym dla każdego ze zbiorników, wraz z przetwornikami zamieniającymi wartość ciśnienia na odpowiedni sygnał elektryczny odpowiadający wysokości słupa cieczy w zbiorniku. Wymiana danych między obiektem a oprogramowaniem MATLAB/Simulink, zainstalowanym na komputerze, odbywa się za pomocą karty akwizycji danych. Kaskadowo połączone zbiorniki są często badanym obiektem sterowania. W pracy [2] przedstawiono układ kaskadowy dwóch zbiorników, w których sterowanie zrealizowano za pomocą regulatorów rozmytych i neuronowych. Celem była regulacja poziomu wody w dolnym zbiorniku przez sterowanie tylko pompą dostarczającą wodę do układu. Autorzy osiągnęli lepszą
Autor korespondujący: Robert Piotrowski, robert.piotrowski@pg.gda.pl Artykuł recenzowany nadesłany 9.04.2015 r., przyjęty do druku 2.07.2015 r. Zezwala się na korzystanie z artykułu na warunkach licencji Creative Commons Uznanie autorstwa 3.0
jakość sterowania, czym udowodnili wyższość obu regulatorów nad regulatorem liniowym PID. W pracy [3] autorzy zdecydowali się na sterowanie poziomem wody w zbiornikach z wykorzystaniem regulatorów PID i metody alokacji biegunów. Celem niniejszego artykułu jest zaprezentowanie wyników sterowania poziomem wody we wszystkich trzech zbiornikach, przy zastosowaniu różnych układów regulacji: PI, wieloobszarowego oraz odpornego z modelem. Przeprowadzono testy symulacyjne jakości regulacji dla stałej i zmiennej trajektorii zadanej (wysokość słupa wody), sterując pompą oraz górnym i środkowym zaworem. Dolny zawór był otwarty, co umożliwiło ciągły transport cieczy, a tym samym ciągłą regulację.
2. Obiekt sterowania 2.1. Zbiorniki
Obiekt sterowania zbudowany jest z trzech zbiorników głównych oraz zbiornika odpowiadającego za magazynowanie wody (rys. 1). Górny zbiornik w kształcie prostopadłościanu, ze względu na stały przekrój poprzeczny, ma dynamikę liniową. Środkowy zbiornik w kształcie trapezu prostokątnego oraz dolny zbiornik w kształcie ćwierćokręgu mają zmienne przekroje poprzeczne, charakteryzują się więc nieliniową dynamiką. Na rys. 2 przedstawiono wymiary poszczególnych zbiorników w centymetrach.
2.2. Urządzenia wykonawcze 2.2.1. Pompa
System wyposażono w pompę prądu stałego (rys. 3), zapewniającą transport cieczy ze zbiornika magazynującego do górnego zbiornika głównego. Pompa DC (ang. Direct Current) zasilana jest sygnałem PWM (ang. Pulse Width Modulation). Metoda ta polega na zmianie wypełnienia sygnału prądowego lub napięciowego przy stałej amplitudzie i częstotliwości [1].
25
Zaawansowane metody sterowania kaskadowym układem zbiorników riału pod wpływem działającego ciśnienia, zapewniają bardzo dokładny pomiar sygnału wyjściowego – proporcjonalny do ciśnienia wody w zbiorniku. Czujniki piezorezystancyjne zawierają mostek, najczęściej Wheatstone’a. W momencie, w którym następuje zmiana ciśnienia, wartości rezystancji oporników w mostku zmieniają się – jedne rosną, inne maleją. Rozstrojenie mostka powoduje pojawienie się sygnału wyjściowego [1].
Rys. 5. Czujnik piezorezystancyjny Fig. 5. Piezoresistive sensor
3. Model obiektu sterowania Model obiektu sterowania można przedstawić w postaci równań opisujących każdy ze zbiorników oraz zależności między nimi [5]:
Rys. 2. Wymiary zbiorników [1] Fig. 2. Tanks’ dimensions [1]
Rys. 1. Kaskada zbiorników Fig. 1. System of cascade tanks
(1)
(2)
(3) Rys. 3. Pompa DC Fig. 3. DC Pump
gdzie: H – wysokość wody w zbiorniku [m], q – dopływ wody do górnego zbiornika [m3/s], C – oporność wyjścia zaworu [–], a – współczynnik pływu do zbiornika [–]. Po określeniu struktury modelu dokonano identyfikacji wartości parametrów zaworów C i a (tab. 1). Początkowe wartości C dobrano na drodze porównania odpowiedzi modelu oraz obiektu sterowania dla każdego zaworu oddzielnie. Następnie, w celu określenia ostatecznych parametrów, porównano charakterystykę napełniania kaskady zbiorników z modelem symulacyjnym.
2.2.2. Zawory
W badanym układzie wykorzystano trzy pary zaworów, po jednej dla każdego zbiornika. Para składa się z zaworu ręcznego oraz sterowanego (rys. 4). Zastosowane urządzenia, regulowane za pomocą sygnału PWM, charakteryzują się przepływem zmiennym proporcjonalnym do sygnału sterującego, nie wymagają minimalnego ciśnienia i mogą być montowane w dowolnej pozycji [4]. Podczas badań testowych zaobserwowano występującą strefę nieczułości, tj. mimo podania sygnału sterującego o pewnej wartości, zawory dalej pozostawały zamknięte. Wielkością graniczną dla sygnału PWM jest wartość bliska 0,6, co oznacza, że podanie sygnału o mniejszej wartości nie spowoduje otwarcia zaworu sterowanego.
Tabela 1. Identyfikacja wartości parametrów Table 1. Identification of parameters values
2.3. Urządzenia pomiarowe
Wszystkie trzy zbiorniki wyposażono w piezorezystancyjne czujniki ciśnienia do pomiaru poziomu cieczy (rys. 5). Urządzenia te, wykorzystując efekt zmiany rezystancji mateP
O
M
I
A
R
Y
•
A
U
T
O
M
C2
C3
a1
a2
a3
6,8e-5
7,8e-5
7,1e-5
0,5
0,5
0,5
W celu walidacji wartości parametrów przeprowadzono eksperyment, polegający na napełnianiu zbiorników przez 30 s przy otwartych zaworach. Następnie porównano wyniki symulacji z pomiarami z obiektu (rys. 6) i obliczono błędy wyjścia (tab. 2). W celu identyfikacji charakterystyki pompy wykonano eksperymentalne porównanie odpowiedzi napełniania górnego zbiornika dla obiektu sterowania oraz jego modelu (rys. 7). W wyniku porównania określono maksymalny możliwy przepływ pompy równy 0,000118 m3/s. Przyjęto, że urządzenia pomiarowe są obiektami proporcjonalnymi o jednostkowym wzmocnieniu. Pomiar wysokości cieczy w zbiornikach odbywa się przez piezorezystancyjne czujniki, które za pomocą przetwornika przekazują sygnał pomiarowy do karty akwizycji danych. Aplikacja firmy INTECO umożliwia przesyłanie wyników pomiaru do środowiska MATLAB/Simulink, gdzie są interpretowane jako wysokość słupa wody w zbiornikach.
Rys. 4. Para zaworów – ręczny (lewy), sterowany (prawy) Fig. 4. Pair of valves – manual (left), controllable (right)
26
C1
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Piotr Bakun, Oskar Długoński, Robert Piotrowski
(4)
(5)
(6)
Miary te wykorzystano do obliczenia błędów względnych i bezwzględnych między odpowiedziami obiektu sterowania oraz jego modelu dla każdego ze zbiorników (tab. 2). Błędy uzyskane w wyniku weryfikacji okazały się mniejsze niż w procesie walidacji. Analizując uzyskane wyniki, uznano model za wystarczająco dokładny dla celów projektowania układów regulacji.
Rys. 6. Porównanie odpowiedzi modelu i obiektu sterowania Fig. 6. Comparison of model and controlled object
4. Algorytmy regulacji Do sterowania kaskadowym układem zbiorników wykorzystano trzy algorytmy regulacji, wszystkie oparte na regulatorze PI (proporcjonalno-całkujący). Dla umożliwienia dokładnego sterowania poziomem wody w zbiornikach sterowano pracą pompy oraz zaworu górnego (nazywanego dalej zaworem 1) i środkowego (zawór 2). Najniższy zawór (zawór 3) pozostawiono otwarty, aby zapewnić ciągły przepływ cieczy w zbiornikach.
Rys. 7. Identyfikacja pompy Fig. 7. Identification of the pump
W celu weryfikacji wartości parametrów przeprowadzono eksperyment, polegający na napełnianiu zbiorników przez 30 s przy zamkniętym zaworze dolnego zbiornika. Błędy wyjścia pokazano w tab. 2. Po osiągnięciu zadowalających wyników dokonano analizy dokładności modelu za pomocą trzech wskaźników jakości: średniokwadratowego, średniego i odchylenia standardowego:
4.1. Regulator PI
Tabela 2. Wartości błędów między odpowiedziami obiektu sterowania i jego modelu Table 2. Error values between controlled object and its model
Rys. 8. Struktura układu regulacji z regulatorem PI Fig. 8. Structure of control system with PI controller
Rodzaj wskaźnika
Rodzaj błędu
Zbiornik górny
Zbiornik środkowy
Zbiornik dolny
Walidacja wartości parametrów modelu Średniokwadratowy
Średni Odchylenie standardowe
Średni Odchylenie standardowe
gdzie: hzad – zadana wysokość słupa cieczy w zbiorniku [m], e – uchyb regulacji [m3/s], n – sygnał sterujący oznaczający przepływ wyliczony przez regulator [m3/s], Q – zadany przepływ przez pompę [m3/s], z – zakłócenie (np. otwarcie zaworu ręcznego), h – zmierzona wysokość słupa cieczy w zbiorniku [m]. Struktura regulacji z rys. 8 przedstawia ogólny schemat systemu sterowania; jest on analogiczny również w przypadku sterowania zaworami w zbiornikach. Przyjęto następującą strukturę regulatora PI: (7)
bezwzględny
0,000463
0,0021
0,0024
względny [%]
0,4505
6,832
13,778
bezwzględny
0,0023
0,0051
0,0031
względny [%]
2,511
17,226
18,106
bezwzględny
0,0048
0,005
0,0012
względny [%]
10
43,881
23,338
gdzie: kP, kI – parametry (nastawy) regulatora. Nastawy regulatorów PI dobrano eksperymentalnie w badaniach symulacyjnych (tab. 3). Tabela 3. Wartości nastaw regulatorów PI Table 3. Settings of PI controllers
Weryfikacja wartości parametrów modelu Średniokwadratowy
Struktura układu regulacji została przedstawiona na rys. 8.
bezwzględny
0,0002
0,0031
0,0021
względny [%]
0,16
8,14
5,07
bezwzględny
0,0138
0,0038
0,0014
względny [%]
12,26
10,93
4,02
bezwzględny
0,0021
0,0006
0,0017
względny [%]
3,64
3,95
8,78
Element sterowany
Wzmocnienie
Wzmocnienie
9
0,5
Zawór górny
100
1,5
Zawór środkowy
50
0,8
Pompa
27
Zaawansowane metody sterowania kaskadowym układem zbiorników
4.2. Regulator wieloobszarowy
z modelem MFC (ang. Model Following Controller) [8, 9]. Bazuje on na wykorzystaniu modelu, dla którego generowane są sygnały sterujące (rys. 10). Te same sygnały wysyłane są do sterowanego obiektu, jednak regulator korzysta z uchybu modelu. Nazywany jest regulatorem modelu. Pomiar z obiektu sterowania porównywany jest z wyjściem z modelu. Jeśli ich różnica niezerowa, regulator korekcyjny generuje kolejny sygnał sterujący, który sumuje się z sygnałem z regulatora modelu, jednocześnie poprawiając jakość sterowania. Zatem do wykorzystania regulacji MFC niezbędne jest opracowanie odpowiednio dokładnego modelu. W przypadku badanej kaskady zbiorników, model w wystarczającym stopniu odwzorowuje obiekt sterowania, co pozwoliło na zaprojektowanie algorytmu sterowania spełniającego wymagania co do jakości regulacji.
Efektywne sterowanie nieliniowym obiektem w całym zakresie zmian punktu pracy za pomocą jednego regulatora PID ze stałymi wartościami nastaw nie jest możliwe. W związku z tym zdecydowano się na zaprojektowanie zbioru regulatorów PI o różnych nastawach, przełączających się w zależności od warunków pracy (rys. 9). Liczbę i zakres obszarów można zidentyfikować po analizie charakterystyki statycznej obiektu. Należy wyróżnić dwa sposoby przełączania: twardy (sygnał sterujący pochodzi z jednego, wybranego lokalnego regulatora) oraz miękki (sygnał sterujący jest generowany na bazie większej liczby lokalnych regulatorów) [7]. W algorytmie sterowania wykorzystano regulację wieloobszarową (trzy regulatory) z twardym przełączaniem dla zaworów 1 i 2. Natomiast dla pompy stosowany jest jeden klasyczny regulator PI.
Rys. 9. Struktura wieloobszarowego układu regulacji Fig. 9. Structure of multiregional control system
gdzie: hzad – zadana wysokość słupa cieczy w zbiorniku [m], ni – sygnał sterujący oznaczający przepływ wyliczony przez regulator [m3/s], i = 1, 2, 3, Q – zadany przepływ przez pompę [m3/s], e – uchyb regulacji [m3/s], z – zakłócenie (np. otwarcie zaworu ręcznego), h – zmierzona wysokość słupa cieczy w zbiorniku [m]. Nastawy regulatorów PI dobrano eksperymentalnie w badaniach symulacyjnych (tab. 4, 5).
Rys. 10. Struktura układu regulacji MFC Fig. 10. Structure of control system with MFC controller
gdzie: hzad – zadana wysokość słupa cieczy w zbiorniku [m], n – sygnał sterujący oznaczający sumę przepływów obliczonych przez regulatory [m3/s], Q – zadany przepływ przez pompę [m3/s], nm – przepływ obliczony przez regulator modelu [m3/s], nkor – dodatkowy przepływ obliczony przez regulator korekcyjny [m3/s], em – uchyb regulacji z modelu [m3/s], e – uchyb regulacji z obiektu [m3/s], hm – sygnał wyjściowy z modelu [m], h – zmierzona wysokość słupa cieczy w zbiorniku [m], z – zakłócenie (np. otwarcie zaworu ręcznego). Analogiczną strukturę sterowania zastosowano dla niższych zbiorników i zaworów jako urządzeń wykonawczych. Nastawy regulatorów PI dobrano jak w punkcie 4.1 (tab. 3). Ustawienia regulatorów mogą różnić się od siebie, co powinno zapewnić lepszą jakość sterowania przy występujących zakłóceniach lub w początkowej pracy systemu. W przypadku kaskady zbiorników zastosowanie tych samych nastaw okazało się wystarczające dla zapewnienia zadowalającej jakości regulacji.
4.3. Regulator odporny z modelem
Istnieje wiele interesujących algorytmów sterowania z wykorzystaniem modelu obiektu, które spełniają wymagania co do jakości sterowania. Jednym z nich jest regulator odporny
Tabela 4. Parametry regulatorów PI w zależności od uchybu dla zaworu sterowanego górnego Table 4. Parameters of PI controllers according to control error for upper controllable valve
Zakres uchybu
Wzmocnienie
Wzmocnienie
> 0,02
26
0,4
<–0,02; 0,02>
16
0,5
< –0,02
18
0,5
5. Testy symulacyjne Ostatnim i najważniejszym elementem projektowania algorytmu sterowania jest sprawdzenie poprawności działania na obiekcie rzeczywistym. Weryfikację jakości sterowania oceniono dla stałej (rys. 11, 12) i zmiennej (rys. 13, 14) trajektorii zadanej. Z rys. 11 wynika, że różnica między wynikami sterowania dla różnych algorytmów jest niewielka. W górnym zbiorniku zadana wysokość słupa wody osiągana jest szybko i z małym przeregulowaniem. Podobne wyniki zaobserwować można w środkowym rezerwuarze. W dolnym zbiorniku algorytm PI i MFC dają podobne odpowiedzi, natomiast regulacja wieloobszarowa charakteryzuje się krótszym czasem regulacji i mniejszym przeregulowaniem. Sygnały sterujące dla zaworów (rys. 12) zachowują się podobnie jak w przypadku regulacji poziomu wody w najniższym zbiorniku. Chwilowe skokowe zmiany sygnału sterują-
Tab. 5. Parametry regulatorów PI w zależności od uchybu dla zaworu sterowanego środkowego Tab. 5. Parameters of PI controllers according to control error for middle controllable valve
28
Zakres uchybu
Wzmocnienie
Wzmocnienie
> 0,02
30
0,8
<–0,02; 0,02>
23
5
< –0,02
18
3
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Piotr Bakun, Oskar Długoński, Robert Piotrowski
Rys. 11. Odpowiedź układu regulacji – stała trajektoria zadana Fig. 11. Response of the control system – constant reference trajectory
cego dla algorytmu wieloobszarowego wynikają z twardego przełączania między regulatorami zależnego od uchybu regulacji. Do testów symulacyjnych dla zmiennej trajektorii zadanej zwiększono wzmocnienie kP regulatora pompy do 60, co pozwoliło osiągnąć lepsze wyniki. Z rys. 13 wynika, że opisywane algorytmy regulacji w różny sposób nadążają za trajektorią zadaną, zachowując krótkie czasy regulacji. Dzieje się tak, gdyż dynamika obiektu sterowania nie pozwala na kontrolę wysokości słupa wody, przy tak założonych kryteriach. Zatem sterowanie w tej postaci można zastosować tylko przy odpowiednich wymaganiach co do jakości sterowania. Najgorszymi wskaźnikami jakości sterowania (czas regulacji, czas narastania, przeregulowanie) odznacza się algorytm wieloobszarowy, co widać szczególnie w przypadku regulacji poziomu wody w środkowym zbiorniku. Powodem jest twarde przełączanie regulatorów, które wystawiają skokowe zmiany sygnału sterującego. Algorytm PI zachowuje się podobnie do regulacji odpornej z modelem, jednak MFC odznacza się większą dokładnością regulacji. Dla dokładniejszego porównania wyników regulacji obliczono całkę z kwadratu uchybu regulacji (8) (ang. Integral Square Error). Przedstawione wyniki (tab. 6) potwierdzają powyższe wnioski.
(8)
Tab. 6. Wartości kryterium ISE Tab. 6. Values of ISE criterion
Rys. 12. Sygnały sterujące zaworów – stała trajektoria zadana Fig. 12. Valve’s control values – constant reference trajectory
Rodzaj regulatora
Rodzaj trajektorii
Zbiornik górny
Zbiornik środkowy
Zbiornik dolny
PI
stała
0,39
2,56
5,52
zmienna
6,73
5,2
15,8
stała
0,35
2,52
4,6
zmienna
6,18
4,94
14,57
stała
0,31
2,51
5,37
zmienna
11,21
4,27
18,43
wieloobszarowy
MFC
6. Podsumowanie Rys. 13. Odpowiedź układu regulacji – zmienna trajektoria zadana Fig. 13. Response of the control system – variable reference trajectory
W artykule przedstawiono analizę porównawczą trzech algorytmów sterowania poziomem wody w kaskadowo połączonych zbiornikach. Wykorzystując regulatory: PI, wieloobszarowy oraz odporny z modelem, dokonano oceny otrzymanych rezultatów sterowania. Nie można jednoznacznie stwierdzić, który z algorytmów sterowania jest najlepszy. Każdy z nich cechuje się inną jakością regulacji i wybranie odpowiedniego zależy od konkretnych wymagań co do jakości sterowania.
Bibliografia
Rys. 14. Sygnały sterujące zaworów – zmienna trajektoria zadana Fig. 14. Valve’s control values – variable reference trajectory
1. Inteco, User Manual, [www.diee.unica.it/~pisano/3TankUserManual.pdf], 2013, dostęp z dnia 05.04.2015 r. 2. Tomera M., Kasprowicz A., Zastosowanie regulatora neuronowego i rozmytego do sterowania poziomem wody w układzie kaskadowym dwóch zbiorników, Zeszyty Naukowe Akademii Marynarki Wojennej, Rok LIII, Nr 3 (190) 2012, 123–138. 3. Tomera M., Kaczmarczyk A., Komputerowy układ sterowania poziomem wody w kaskadzie dwóch zbiorników.
29
Zaawansowane metody sterowania kaskadowym układem zbiorników
Zeszyty Naukowe Wydziału Elektrotechniki i Automatyki, Nr 28/2010, 135–138. 4. ASCO, Proportional solenoid valve posiflow. [www.asconumatics.eu/images/site/upload/_en/pdf1/00021gb.PDF], dostęp z dnia 05.04.2015 r. 5. Gutenbaum J., Modelowanie matematyczne systemów, Państwowe Wydawnictwo Naukowe, Warszawa 1987. 6. Åström K.J., Hägglund T., PID Controllers: Theory, Design and Tuning. 2nd Edition, Instrument Society of America, North Carolina 1995.
7. Strojny R., Piotrowski R., Wieloobszarowy układ regulacji PI do sterowania prędkością obrotową samochodu z silnikiem spalinowym, „Pomiary Automatyka Robotyka”, 6/2013, 90–95. 8. Brzózka J., Regulatory i układy automatyki, Wydawnictwo Mikom, Warszawa 2004. 9. Skoczkowski S., Osypiuk R., Pietrusewicz K., Odporna regulacja PID o dwóch stopniach swobody. Wydawnictwo Naukowe PWN, Warszawa 2006.
Advanced Control Systems of Cascade Tanks Abstract: This paper considers cascade tanks with actuators and measuring elements. The control
task is to regulate the pump flow and valve’s degree of opening for reach the desired height of the water in each tank as accurately and as quickly as possible. Three control systems of water level in each tank had been projected using: classic PI controller, multiregional controller and robust controller with model of the object. The comparative analysis of developed control system had been performed for constant and variant reference trajectory. Simulation tests were performed in MATLAB/Simulink environment, which communicates with the object using a data acquisition card installed in PC. Keywords: cascade tanks, PI control system, multiregional control system, robust control system
inż. Piotr Bakun
inż. Oskar Długoński
Absolwent studiów inżynierskich na kierunku Automatyka i Robotyka, spec. Automatyka i Systemy Sterowania na Wydziale Elektrotechniki i Automatyki Politechniki Gdańskiej. Zainteresowania: technologie informacyjne, systemy sterowania.
Absolwent studiów inżynierskich na Wydziale Elektrotechniki i Automatyki Politechniki Gdańskiej (kierunek: Automatyka i Robotyka, specjalność Automatyka i Systemy Sterowania). Zainteresowania: zaawansowane algorytmy sterowania, motoryzacja.
piotr.bakun@gmail.com
oskar.dlugonski@gmail.com
dr inż. Robert Piotrowski robert.piotrowski@pg.gda.pl
Absolwent Wydziału Elektrotechniki i Automatyki Politechniki Gdańskiej (2001 r.) (kierunek: Automatyka i Robotyka). W 2005 r. uzyskał stopień doktora nauk technicznych (Automatyka i Robotyka). Obecnie adiunkt w Katedrze Inżynierii Systemów Sterowania. Zainteresowania naukowe dotyczą modelowania i zaawansowanych metod sterowania procesami przemysłowymi.
30
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015, 31–35, DOI: 10.14313/PAR_217/31
Pomiar objętościowego natężenia przepływu mleka Igor P. Kurytnik
Państwowa Wyższa Szkoła Zawodowa, Zakład Inżynierii Procesów i Jakości, ul. Kolbego 8, 32-600 Oświęcim
Marcin Tomasik, Stanisław Lis
Uniwersytet Rolniczy, Wydział Inżynierii Produkcji i Energetyki, Katedra Energetyki i Automatyzacji Procesów Rolniczych, ul. Balicka 116, 30-149 Kraków
Streszczenie: W artykule przedstawiono analizę porównawczą pomiaru poziomu mleka w kolumnie
autonomicznego aparatu udojowego, jako wymierną informację o chwilowym objętościowym natężeniu wypływu mleka ze strzyka wymienia krowy. Badania laboratoryjne przeprowadzono z wykorzystaniem trzech różnych czujników poziomu cieczy. Opracowano prototypy dwóch wersji rezystancyjnych układów pomiaru poziomu cieczy, których działanie porównano z czujnikiem Sensortechnic – CLC100. Wybrana metoda pomiarowa może być stosowana w bioinżynierii zwierząt; pozwoli dodatkowo na pomiar przewodności elektrycznej mleka. Ta wielkość fizyczna pozwala wykryć przypadki kliniczne u poszczególnych zwierząt w stadzie. Na podstawie informacji o poziomie mleka w kolektorze, w bloku funkcyjnym zaprogramowanym w sterowniku logicznym, obliczane jest chwilowe objętościowe natężenie wypływu mleka z ćwiartki gruczołu mlekowego krowy. Precyzyjny pomiar tej wielkości umożliwia sterowanie parametrami doju maszynowego krów, dopasowanymi do każdego strzyka wymienia krowy, z uwzględnieniem cech osobniczych w zakresie oddawania mleka. Słowa kluczowe: aparat udojowy, czujnik poziomu, przepływ cieczy
1. Wprowadzenie Pomiary wypływu mleka ze strzyka wymienia krowy mają kluczowe znaczenie w sterowaniu parametrami doju maszynowego. Żadne z urządzeń pomiarowych stosowanych do pomiaru tej wielkości, oferowanych przez producentów sprzętu udojowego, nie gwarantuje pomiarów na poziomie dokładności (błąd względny) poniżej 10% [2, 10, 11]. Najczęściej producenci nie podają dokładności tych urządzeń, w notach informacyjnych można znaleźć jedynie zwroty „bardzo dokładny pomiar”. Opracowany przez autorów system sterowania autonomicznym aparatem udojowym i przedstawiany w pracach naukowych [3, 6] wymaga dostarczania precyzyjnych informacji o wartości chwilowego objętościowego natężenia wypływu mleka ze strzyka wymienia krowy, stąd pojawiła się konieczność opracowania metody pomiaru tej wielkości [7, 9]. Wymagany układ może być zoptymalizowany tylko przez skonstruowanie odpowiedniego systemu pomiarowego wypływu mleka ze strzyka wymienia krowy. Taki system powinien mierzyć
Autor korespondujący: Marcin Tomasik, marcin.tomasik@ur.krakow.pl Artykuł recenzowany nadesłany 13.04.2015 r., przyjęty do druku 27.07.2015 r. Zezwala się na korzystanie z artykułu na warunkach licencji Creative Commons Uznanie autorstwa 3.0
wypływ mleka z każdej ćwiartki wymienia krowy. Parametry doju będą zmieniać się zależnie od wielkości wypływu mleka [1, 8]. Umożliwi to sterowanie procesem doju w obrębie każdej ćwiartki i dopasowanie dynamiki doju do cech osobniczych krów. Charakterystyka wpływu mleka ze strzyka krowy dostarcza dodatkowych ważnych informacji o reakcji na warunki doju itp. Przez wyznaczenie rezystancji właściwej pozyskiwanego od krowy mleka, można uzyskać informacje o jej stanie zdrowia. Celem prac badawczych było opracowanie koncepcji czujnika poziomu, umożliwiającego pośrednie wyznaczenie objętościowego natężenia mleka przepływającego przez komory aparatu udojowego. Zakres pracy obejmował opracowanie koncepcji czujnika mierzącego przepływ cieczy przez kolektor aparatu udojowego, a następnie wykonanie schematów ideowych oraz prototypów urządzeń. Koncepcyjne układy pomiarowe weryfikowano w warunkach laboratoryjnych.
2. Aparat udojowy z systemem kontrolno-sterującym Obiektem badań był koncepcyjny aparat udojowy (rys. 1), w którym zastosowano rozdzielone ciśnienie ssące mleko z strzyka wymienia krowy od transportującego do rurociągu i schładzarki. Konstrukcja tego urządzenia została objęta ochroną patentową. Na rysunku widoczna jest jedna sekcja obsługująca ćwiartkę wymienia krowy – składa się z dwóch zbiorników napełnianych naprzemiennie. W opracowanym aparacie udojowym wyróżnić można dwa systemy sterowa-
31
Pomiar objętościowego natężenia przepływu mleka
nia realizowane za pomocą jednego sterownika PLC. Pierwszy z systemów steruje dopływem mleka i powietrza do jego komór za pośrednictwem elektrozaworów zaciskowych zainstalowanych na przewodach mlecznych oraz powietrznych. Drugi system realizuje regulację ciśnienia ssącego dostarczanego do komory podstrzykowej kubka udojowego [4]. Zalecane jest, aby wartość tego ciśnienia była skorelowana z wypływem mleka dla danego
strzyka udojowego, ponadto ciśnienie ssące odprowadzające mleko do instalacji rurociągowej (o większej wartości) nie może powodować zmian ciśnienia podstrzykowego. Konstrukcja aparatu udojowego wyposażonego w kolumny dwukomorowe dla każdego strzyka niezależnie, umożliwia pomiar natężenia wypływu mleka ze strzyka zgodnie z zależnością (1):
(1)
gdzie: A – pole powierzchni przekroju poprzecznego komory aparatu udojowego (cm2), h – poziom mleka w komorze (cm), Q – objętościowe natężenie przepływu (dm3∙min-1).
3. Koncepcyjny układ pomiarowy Podstawową informacją umożliwiającą wyznaczenie objętościowego natężenia przepływu jest zmiana poziomu cieczy różniczkowana po czasie. Zasada działania układów pomiarowych poziomu cieczy została oparta na pomiarze rezystancji obwodów zamykanych przez podnoszący się poziom mleka w komorze kolektora. Opracowano dwa warianty układów pomiarowych – z szeregowym oraz z równoległym połączeniem oporników. Schemat ideowy rezystancyjnego czujnika poziomu przedstawiono na rys. 2. Czujnik rezystancyjny zbudowany jest z 47 rezystorów o rezystancji 1 kΩ każdy. Jeden „pin” doprowadza
Rys. 1. Pomiarowy aparat udojowy Fig. 1. Measuring the cluster
Rys. 3. Schemat rezystancyjnego czujnika poziomu cieczy – połączenie równoległe: 1 – listwa „pin”, 2 – potencjometr skalujący 10 kΩ, 3 – wyjście napięciowe, 4 – masa, 5 – listwa połączeniowa, 6 – rezystor 47 kΩ, 7 – „pin” zasilający układ pomiarowy Fig. 3. Scheme of a resistive liquid level sensor – connected in parallel: 1 – strip pin, 2 – scaling 10 kΩ potentiometer, 3 – voltage output, 4 – mass, 5 – connection strip, 6 – 47 kΩ resistor, 7 – supply voltage for measurement system
Rys. 2. Schemat rezystancyjnego czujnika poziomu cieczy – połączenie szeregowe: 1 – listwa pin, 2 – potencjometr skalujący 10 kΩ, 3 – wyjście napięciowe, 4 – masa, 5 – listwa połączeniowa, 6 – rezystor 1 kΩ, 7 – zasilanie układu pomiarowego Fig. 2. Scheme of a resistive liquid level sensor – serial connection: 1 – strip pin 2 – scaling 10 kΩ potentiometer, 3 – voltage output, 4 – mass, 5 – connection strip, 6 – resistor 1 kΩ, 7 – supply voltage for measurement system
32
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Igor P. Kurytnik, Marcin Tomasik, Stanisław Lis
napięcie zasilające do układu pomiarowego. Potencjometr skalujący pozwala na regulację napięcia w zakresie od 1 V DC do 10 V DC. Czujnik wbudowany jest w plastikowy przezroczysty pojemnik. Podczas napełniania zbiornika pomiarowego cieczą mlekozastępczą, w miarę wzrostu jej poziomu – załączane są kolejne piny czujnika. Wartość napięcia wzrasta wraz z poziomem cieczy. Wartość napięcia rejestrowana jest za pomocą karty pomiarowej na komputerze PC. W drugim wariancie konstruowanego układu połączono oporniki równolegle (rys. 3). Układ został zbudowany jak poprzednio, ale tym razem zastosowano oporniki o rezystancji 47 kΩ. Prototyp czujnika zainstalowanego w kolumnie aparatu udojowego przedstawiono na rys. 4. Rys. 4. Rezystancyjny czujnik poziomu zamontowany w komorze Fig. 4. The resistive level sensor installed in the chamber
4. Weryfikacja funkcjonowania koncepcyjnych układów pomiarowych Podczas wstępnych badań laboratoryjnych wykonano charakterystyki napięciowe dla każdego z konstruowanych układów. Uzyskane wyniki badań wykazały, że otrzymane charakterystyki nie są liniowe. Po przeprowadzeniu aproksymacji charakterystyk otrzymano przybliżone równania. Charakterystykę napięciową wykonywano trzy razy dla każdego czujnika, następnie z pomiarów wyciągano średnią. Na podstawie średniej charakterystyki napięciowej czujniki pomiarowe zostały przeskalowane za pomocą funkcji obliczeniowych tak, aby wskazywały poziom cieczy w centymetrach. Wzory obliczeniowe wprowadzono do programu MATLAB/Simulink, w którym wyznaczano równania aproksymujące. W procesie modelowania wykorzystano metodę szybkiego prototypowania układów sterowania [4, 5]. Następnie równania te zostały wprowadzone w bloku funkcyjnym programowalnego sterownika logicznego PLC, który obliczał objętościowe natężenie przepływu. Wybrano takie rozwiązanie, ponieważ sterownik ten miał również wbudowany algorytm sterowania całym aparatem udojowym. Wysoka moc obliczeniowa tego urządzenia gwarantowała poprawną pracę całego systemu pod rygorem czasu rzeczywistego. Charakterystykę napięciową układu pomiarowego z szeregowym połączeniem rezystorów wraz wynikami aproksymacji przedstawiono na rys. 5. Aproksymację realizowano przy użyciu różnych wielomianów. Najbardziej optymalnym, dającym odpowiednią jakość dopasowania z uwzględnieniem konieczności zaprogramowania go na sterowniku logicznym był wie-
Rys. 5. Charakterystyka napięciowa układu pomiarowego z szeregowym połączeniem rezystorów oraz aproksymacją wielomianem stopnia czwartego Fig. 5. Characteristics of voltage measuring system with a serial combination of resistors and fourth degree polynomial approximation
Rys. 6. Charakterystyka napięciowa układu pomiarowego z równoległym połączeniem rezystorów oraz aproksymacją wielomianem stopnia czwartego Fig. 6. Characteristics of voltage measuring system parallel combination of resistors and fourth degree polynomial approximation
lomian stopnia czwartego. Taki wariant wybrano również dla układu z połączeniem równoległym rezystorów (rys. 6). Pomiary weryfikacyjne zostały wykonane za pomocą czujnika Sensortechnic – CLC o deklarowanym przez producenta błędzie względnym pomiaru – wynoszącym 1%. Czujnik poziomu cieczy CLC (rys. 7) pozwala na bezdotykowy pomiar
Rys. 7. Referencyjny czujnik poziomu Sensortechnic – CLC Fig. 7. Reference sensortechnic level sensor – CLC
poziomu cieczy, może być łatwo przymocowany do pojemnika lub naczynia. Wykorzystuje bezstykową pojemnościową technologię pomiaru. Jest to urządzenie wydajne przystosowane do intensywnego, długotrwałego użytkowania. Czujnik CLC przed użyciem dla każdej cieczy należy poddać kalibracji. W badaniach czujnik kalibrowano przymiarem liniowym
33
Pomiar objętościowego natężenia przepływu mleka
5. Wnioski
z dokładnością do 1 mm, służył on również jako dodatkowy przyrząd weryfikujący. Na rys. 8 zamieszczono charakterystykę napięciową czujnika pomiarowego CLC, wykres zawiera również dopasowanie funkcji aproksymacyjnej do charakterystyki napięciowej.
1. Układ pomiarowy przeznaczony do pomiaru chwilowego objętościowego przepływu cieczy mlekozastępczej z równoległym połączeniem rezystorów charakteryzował się maksymalnym błędem względnym wynoszącym 3,2%. 2. Układ pomiarowy przeznaczony do pomiaru chwilowego objętościowego przepływu cieczy mlekozastępczej z szeregowym połączeniem rezystorów posiadał maksymalny błąd względny wynoszący 5,2%. 3. Oszacowany maksymalny błąd względny pomiaru dla czujnika CLC wynosił 1,5%. Czujnik CLC umożliwia zaprogramowanie granicy dwóch ośrodków (mleko – piana), dlatego najlepiej mierzył poziom cieczy pieniącej. 4. Przewiduje się poprowadzenie prac dotyczących poprawy układu pomiarowego, które mogą spowodować znaczące zmniejszenie nieliniowości charakterystyki pomiarowej tego układu.
Bibliografia
1. Ambord S., Bruckmaier R.M., Milk flow-dependent vacuum loss in high-line milking systems: Effects on milking characteristics and teat tissue condition, “Journal of Dairy Science”, Vol. 93, 8/2010, 3588–3594, DOI: 10.3168/ jds.2010-3059. 2. Ipema A.H., Hogewerf P.H., Quarter-controlled milking in dairy cows, “Computers and Electronics in Agriculture”, Vol. 62, 1/2008, 59–66, DOI: 10.1016/j.compag.2007.09.007. 3. Juszka H., Lis S., Tomasik M., Koncepcja dwukomorowego kolektora autonomicznego aparatu udojowego, „Inżynieria Rolnicza”, R. 15, Nr 8(133)/2011, 161–165. 4. Juszka H., Lis S., Tomasik M., Validation of a model of the negative pressure set value signal formation in the cow machine milking, “Journal of Research and Applications in Agricultural Engineering”, Vol. 56, No. 2/2011, 68–71. 5. Kurytnik I.P., Lis S., Dróżdż T., Telega A., Metoda szybkiego prototypowania w opracowaniu algorytmu sterowania instalacją solarną, „Pomiary Automatyka Kontrola”, R. 60, Nr 5/2014, 325–328. 6. Lis S., Juszka H., Tomasik M., Modelowanie przepływu mleka w kolumnie kolektora autonomicznego aparatu udojowego dla krów, „Inżynieria Rolnicza”, R. 16, Nr 2(136)/2012, 169–178. 7. Ordolff D., Introduction of electronics into milking technology, “Computers and Electronics in Agriculture”, Vol. 30, 1-3/2001. 125–149. 8. Rasmussen M.D., Influence of switch level of automatic cluster removers on milking performance and udder health, “Journal of Dairy Research”, Vol. 60, 3/1993, 287–297, DOI: 10.1017/S0022029900027631. 9. Rossing W., Hogewerf P.H., State of the art of automatic milking systems, “Computers and Electronics in Agriculture”, 17/1997, 1–17. 10. Tomasik M., Juszka H., Lis S., Analiza porównawcza metod pomiaru przepływu mleka w kolumnie autonomicznego aparatu udojowego, „Inżynieria Rolnicza”, R. 16, Nr 2(136)/2012, 335–344. 11. Zaninelli M., Tangorra F.M., Development and testing of a “free-flow” conductimetric milk meter, “Computers and Electronics in Agriculture”, Vol. 57, 2/2007, 166–176, DOI: 10.1016/j.compag.2007.03.004.
Rys. 8. Charakterystyka napięciowa czujnika CLC Fig. 8. Characteristics of the sensor voltage CLC
Każdy z badanych układów pomiaru poziomu badano wg tego samego schematu: karta pomiarowa z przetwornikiem A/D o rozdzielczości 16 bitów, oprogramowanie MATLAB/Simulink, za pomocą którego prowadzono rejestrację pomiarów i obliczenia. Przeprowadzone pomiary pozwoliły na oszacowanie ich dokładności pomiarowych, a wyniki zestawiono w tabeli 1. Zamieszczono w niej średnie wartości błędu pomiarów odnoszące się do zakresu pomiarowego. Tabela 1. Wartość błędów pomiaru natężenia wypływu dla badanych czujników Table 1. The measurement errors for the test flow rate sensors
Układ szeregowy
Układ równoległy
Czujnik CLC
5,2
3,2
1,5
Średni absolutny błąd względny [%]
Otrzymane równania pozwoliły na zaprogramowanie programowalnego sterownika logicznego do realizacji wyliczania objętościowego natężenia przepływu cieczy mleko zastępczej przez kolektor. Przeprowadzono łącznie 45 prób dla różnych wartości natężenia przepływu. Sterownik płynnie wyznaczał wartość chwilowego objętościowego natężenia przepływu cieczy przez komorę kolektora. Przedstawione w pracy czujniki różnią się charakterystykami napięciowymi, lecz funkcjami matematycznymi można skutecznie opisywać realizowane w nich przetwarzanie sygnałów. Są łatwe w eksploatacji, utrzymywanie czystości nie jest problematyczne, ponieważ nie posiadają części ruchomych. Zastosowana koncepcja budowy czujnika pomiarowego umożliwia realizację w nim pomiaru przewodności elektrycznej mleka.
34
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Igor P. Kurytnik, Marcin Tomasik, Stanisław Lis
The measurement of volumetric flow rate milk Abstract: The peper presents a comparative analysis measuring the level of milk in the column autonomous milking cluster, as tangible information about the momentary volume flow of milk outflow from a teat of a cow. Laboratory tests were carried out for the three liquid level sensors. Prototypes of two versions of the resistive circuits liquid level developed, whose function was compared with a sensor sensortechnic – CLC100. The chosen method of measurement is related to the bioengineering of animals, will also allow for the measurement of electrical conductivity of milk. This physical quantity enables to detect the clinical cases in individual animals in the herd. On the basis of information on the level of milk in a collector, function block programmed logic controller, the instantaneous volumetric flow of milk from the udder quarters of a cow is calculated. Precise measurement of this quantity allows one to control the parameters of machine milking cows, matched to each teat of the cow, taking into account ontogenetic differences in the putting milk. Keywords: milking cluster, level sensor, liquid flow
prof. dr hab. inż. Igor Piotr Kurytnik
dr inż. Marcin Tomasik
Profesor zwyczajny Akademii Techniczno-Humanistycznej w Bielsku-Białej (kierownik Katedry Elektrotechniki i Automatyki) i Państwowej Wyższej Szkoły Zawodowej w Oświęcimiu (kierownik Zakładu Inżynierii Procesów i Jakości). Z wyróżnieniem ukończył Wydział Automatyki i Elektroniki Politechniki Lwowskiej (1968 r.). Obrona doktoratu – 1973 r., habilitacja – 1987 r., prof. tytularny – 1990 r. Jest autorem ponad 250 patentów i publikacji naukowo-technicznych z zakresu technik informacyjno-pomiarowych. Członek Akademii Inżynierskich w Polsce i Ukrainie. Reprezentant Polskiego Komitetu Normalizacyjnego, konsultant do spraw rozwoju firmy Limatherm Sensor.
Absolwent Wydziału Techniki i Energetyki Rolnictwa Akademii Rolniczej im. H. Kołłątaja w Krakowie. W tejże Uczelni w 2005 r. uzyskał stopień doktora nauk rolniczych w zakresie inżynierii rolniczej. Od 2005 r. pracuje na stanowisku adiunkta w Katedrze Energetyki i Automatyzacji Procesów Rolniczych na Wydziale Inżynierii Produkcji i Energetyki Uniwersytetu Rolniczego im. H. Kołłątaja w Krakowie. Jest autorem i współautorem: 2 monografii, 90 publikacji w krajowych czasopismach naukowych, 6 publikacji w zagranicznych czasopismach naukowych, w tematyce modelowania, automatyzacji (z zastosowaniem PLC oraz systemów informatycznych SCADA) procesów produkcyjnych.
ikurytnik@ath.bielsko.pl
marcin.tomasik@ur.krakow.pl
dr inż. Stanisław Lis stanislaw.lis@ur.krakow.pl
Absolwent Wydziału Techniki i Energetyki Rolnictwa Akademii Rolniczej im. H. Kołłątaja w Krakowie. W tejże Uczelni w 2009 r. uzyskał stopień doktora nauk rolniczych w zakresie inżynierii rolniczej. Od 2011 r. pracuje na stanowisku adiunkta w Katedrze Energetyki i Automatyzacji Procesów Rolniczych na Wydziale Inżynierii Produkcji i Energetyki Uniwersytetu Rolniczego im. H. Kołłątaja w Krakowie. Jego zainteresowania badawcze obejmują automatyzację i robotyzację procesów rolno-spożywczych.
35
36
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015, 37–40, DOI: 10.14313/PAR_217/37
Biosensory Aleksandra Kłos-Witkowska
Akademia Techniczno-Humanistyczna w Bielsku-Białej, Katedra Elektrotechniki i Automatyki, ul. Willowa 2, 43-309 Bielsko-Biała
Streszczenie: W prezentowanej pracy została opisana budowa i zasada działania biosensorów. Podano przykłady analitów oraz substancji biologicznych stosowanych w warstwach receptorowych. Przedstawiono zastosowanie biosensorów w medycynie, przemyśle spożywczym, ochronie środowiska, przemyśle obronnym oraz w badaniach biofarmaceutycznych. Opisano trendy i perspektywy rozwoju tego typu urządzeń. Słowa kluczowe: biosensor, sensor, analit, warstwa receptorowa, warstwa przetwornikowa
1. Wprowadzenie Rozwój technologiczny i cywilizacyjny, zwiększające się wymogi dotyczące ochrony środowiska oraz konieczność stawiania szybkiej, precyzyjnej i trafnej diagnozy, przyczyniły się do intensyfikacji prac badawczych i konstruktorskich nad nową generacją czujników zwanych biosensorami. Urządzenie te łączą ze sobą czułość i selektywność klasycznych metod analizy z bogatym spektrum rozwiązań konstrukcyjnych dostosowanych do określonego przeznaczenia. Terminem biosensor określany jest rodzaj czujnika chemicznego, który zawiera w swej budowie element biologiczny. Według definicji przyjętej przez IUPAC (International Union of Pure Applied Chemistry), biosensor jest samowystarczalnym, zintegrowanym urządzeniem, które dostarcza specyficznych ilościowych lub półilościowych informacji analitycznych za pomocą składników umieszczonych w bezpośrednim kontakcie z elementem przetwarzającym [1]. Biosensory ze względu na szeroki wachlarz zastosowań mogą być stosowane w ochronie środowiska do detekcji szkodliwych substancji takich jak fenole [2], metale ciężkie [3], gazy (do określenia toksyczności atmosfery) [4], pestycydy [5]. Znajdują również zastosowanie w przemyśle, wszędzie tam, gdzie potrzebny jest monitoring reakcji chemicznych, a także w medycynie, gdzie za pomocą biosensorów wykrywane są markery chorobotwórcze, np. markery choroby nowotworowej [6]. Pierwsze biosensory opracowano w drugiej połowie XX wieku (1956 r.), kiedy to C. Clark Jr. wynalazł pierwszy sensor – elektrodę tlenową. On też opisał pierwszy sensor enzymatyczny dla glukozy [7]. Z biegiem czasu pojawił się pierwszy sensor amperometryczny (1962 r.), a w ślad za nim (1969 r.), dzięki pracom Guilbauta i Montalvo, pierwszy sensor potencjometryczny. W latach 70. zaczęto koncentrować wysiłki nad komercjalizacją urządzeń oraz wprowadzaniu ich na rynek. Ogromny sukces ekonomiczny biosensorów glukozy przyczynił się do zwiększo-
Autor korespondujący: Aleksandra Kłos-Witkowska, awitkowska@ath.bielsko.pl Artykuł recenzowany nadesłany 15.06.2015 r., przyjęty do druku 17.08.2015 r. Zezwala się na korzystanie z artykułu na warunkach licencji Creative Commons Uznanie autorstwa 3.0
nego zainteresowania tematem biosensorów wśród firm farmaceutycznych oraz zainwestowania ogromnych środków finansowych w badania i rozwój. Obecnie rynek biosensorów rozwija się bardzo dynamicznie. Rosną możliwości aplikacyjne i konstruktorskie. Według opublikowanego przez Transparency Market Research raportu szacuje się, że jego wielkość cały czas rośnie i osiągnie w 2018 r. wartość 18,9 biliona USD [8]. O ogromnym potencjale biosensorów świadczy również wzrastająca liczba publikacji naukowych, która na podstawie naukowej bazy danych Web of Science, na przestrzeni ostatnich 20 lat, wzrosła niemalże 10-krotnie. Biosensory to urządzenia, w konstrukcji których wykorzystywane są najnowsze osiągnięcia nauki i techniki z wielu dziedzin takich jak: chemia, fizyka, biologia, elektronika, inżynieria. Dlatego też, coraz częściej zespoły badawcze i konstruktorskie skupiają fachowców o różnorodnych polach badawczych, ale jednocześnie o wspólnym zainteresowaniu naukowym. Mimo ogromnego sukcesu, biosensory stanowią w dalszym ciągu duże pole dla konstruktorów i naukowców. Obecnie wysiłki koncentrują się na poprawie parametrów biosensorów, uzyskaniu specjalistycznych, tanich, prostych w obsłudze, niewielkich rozmiarów urządzeń. Jednocześnie dokładnych, dzięki wysokiej selektywności i czułości oraz zdolnych do wielokrotnego użycia.
2. Budowa i zasada działania biosensorów W skład budowy biosensora wchodzi selektywna części receptorowa oraz część przetwornikowa. Warstwa receptorowa jest najistotniejszym elementem biosensora, decydującym o jego selektywności, czasie odpowiedzi oraz czasie życia [9]. Na jej powierzchni znajdują się receptory (zazwyczaj molekuły biologiczne), które są odpowiedzialne za wychwycenie badanej cząsteczki (analitu). W części przetwornikowej następuje zamiana wyniku biologicznego oddziaływania między molekułami receptora a molekułami badanymi na sygnał elektryczny, chemiczny lub inny. W dużym uproszczeniu można porównać biosensor składający się z części receptorowej i przetwornikowej do zamka, a cząsteczkę, która podlega detekcji (analit) do klucza. W przypadku odpowiedniego doboru zamka i klucza, czyli zgodności analitu z bioreceptorem, powstaje sygnał charakterystyczny dla zjawiska biologicznego, który jest przetwarzany w części przetwornikowej, a następnie mierzony za pomocą odpowiednich metod w zależności od jego rodzaju [10].
37
Biosensory Ze względu na sposób generacji sygnału, biosensory można podzielić na: −−biosensory elektrochemiczne, które dzielą się dalej na biosensory potencjometryczne, amperometryczne, kalorymetryczne; −−biosensory optyczne, które dalej sklasyfikować można ze względu na wykorzystane zjawisko fizyczne i metody detekcji: −−luminescencyjne, −−fluorescencyjne, −−absorpcyjne UV-Vis, −−biosensory wykorzystujące metodą powierzchniowego rezonansu plazmowego; −−biosensory piezoelektryczne; −−biosensory termiczne [37].
Fe +2 , Hg +2 , Ca +2, Pb +2, Zn +2 3 2 mocznik
anality
warstwa receptorowa
enzym, antygen, kwas nukleinowy, organelle komórkowe, komórki, białka, porfiryny
warstwa przetwornikowa
SYGNAŁ
elektrochemiczny
optyczny
termiczny
piezoelektryczny
3. Zastosowanie biosensorów
Biosensory powszechnie stosowane są w wielu dziedzinach takich jak medycyna, gdzie biosensory wykorzystywane są do monitorowania poziomu glukozy we krwi [15], wykrywania choroby nowotworowej [6, 7, 35] między innymi w celu wykrywania nowotworów płuca, zapalenia wątroby [17], czy też wirusa HIV (ang. human immunodeficiency virus) [16]. Prowadzone są również prace nad śledzeniem procesu gojenia się ran [36]. Wykorzystując biosensory piezoelektryczne [32] i fluorescencyjne [34] podejmowano próby detekcji toksyny cholery. W przemyśle spożywczym biosensory stosowane są do wykrywania obecności komponentów alergicznych [18], detekcji patogenów w produktach spożywczych [18, 21], wykrywania pestycydów [18, 20] lub detekcji bakterii [19, 21]. W ochronie środowiska biosensory stosowane są do oceny jakości czystości wody [5], detekcji toksycznych gazów [4] czy też wykrywania jonów metali ciężkich: Hg2+, Cd2+, Pb2+, Cu2+, Zn2+ [22]. W przemyśle obronnym biosensory wykorzystywane są w celu wykrywania zagrożeń spowodowanych bronią biologiczną [23] lub detekcji środków bojowych [24]. Przykładem są prace prowadzone przez rząd Stanów Zjednoczonych w ramach walki z terroryzmem, których celem jest wykrywanie toksyny
wizualizacja
Rys. 1. Schemat budowy biosensora wraz z przykładowymi analitami i substancjami biologicznymi w warstwie receptorowej oraz zasada działania bioczujnika Fig. 1. Diagram of biosensor with sample analytes and biological substances in receptor layer, operating principle of the biosensor
Anality to składniki wykrywane przez selektywną warstwę receptorową. Mogą nimi być m.in.: Fe+2, Hg+2, Ca+2, Pb+2, Zn+2, NH3, CO2, glukoza, mocznik [9-12]. Anality dyfundują z medium na powierzchnię biosensora, reagują specyficznie i efektywnie z warstwą receptorową, w której może znajdować się element biologiczny, np. enzym, antygen, kwas nukleinowy, organelle komórkowe, komórki, białka, porfiryny. W wyniku oddziaływania, po transformacji zjawiska w sygnał w warstwie przetwornikowej, następuje jego detekcja. Sygnał może być termiczny, elektrochemiczny, optyczny, piezoelektryczny. W zależności od natury sygnału dobiera się odpowiednie metody pomiarowe, np. w przypadku sygnału optycznego stosuje się spektrofluorymetrię wykorzystującą emisję promieniowania [12], spektroskopię UV/Vis [13] bazującą na zjawisku absorpcji, czy też spektometrię odbiciową [14]. Tabela 1. Przykłady zastosowań biosensorów w medycynie, przemyśle spożywczym, ochronie środowiska, Końcowym etapem jest wizuprzemyśle obronnym oraz w badaniach biofarmaceutycznych alizacja. Table 1. Examples of biosensors applications in medicine, food industry, environmental protection, defense industry Schemat biosensora oraz and bio-pharmaceutical research zasadę jego działania ilustruje Dziedziny zastosowania rys. 1. Przykłady zastosowań biosensorów Bibliografia biosensorów Zarówno rodzaj przetwornika, jak i rodzaj materiału monitorowanie poziomu glukozy we krwi 15 biologicznego użytego w warwykrywanie choroby nowotworowej 6, 7, 35 stwie receptorowej, są podMedycyna stawą klasyfikacji biosensorów. detekcja zapalenia wątroby 17 Powszechnie klasyfikacja ta wykrywanie wirusa HIV (ang. human immunodeficiency virus) 16 obejmuje podział biosensorów ze względu na rodzaj recepwykrywanie obecności alergicznych komponentów w żywności 18 tora wpływającego na biosedetekcja patogenów w produktach spożywczych 18, 21 lektywność czujnika oraz na Przemysł spożywczy wykrywanie pestycydów w jedzeniu 18, 20 rodzaj przetwornika mającego wpływ na czułość biosensora. detekcja bakterii w pożywieniu 19, 21 Biorąc pod uwagę podział ze ocena jakości czystości wody 5 względu na rodzaj receptora, a uściślając biologiczny eleOchrona środowiska detekcja toksyczności gazów 4 ment rozpoznawczy biosensory 2+ 2+ 2+ 2+ 2+ 22 wykrywanie jonów metali ciężkich: Hg , Cd , Pb , Cu , Zn można podzielić na biosensory bazujące na enzymach, biosenwykrywanie zagrożeń spowodowanych bronią biologiczną 23, 34 Przemysł obronny sory wykorzystujące wirusy, detekcja środków bojowych 24 antyciała, antygeny, proteiny, kwasy nukleinowe. badanie biomolekuł i ich oddziaływań 27 Badania biofarmaceutyczne
38
P
O
M
I
A
R
Y
•
A
U
badania farmakokinetyki i farmakodynamiki nowych leków
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
25, 26
N R 3/ 20 1 5
Aleksandra Kłos-Witkowska botulinowej (zwanej jadem kiełbasianym) wytwarzanej przez bakterie Clostridium botulinum i powoduje paraliż mięśni [34]. Biosensory coraz częściej znajdują również zastosowania w badaniach bio-farmaceutycznych, gdzie wykorzystywane są do badania biomolekuł i ich oddziaływań [27], jak również do badania farmakokinetyki i farmakodynamiki nowych leków [25, 26].
4. Perspektywy Mimo zwiększającej się liczby badań naukowych oraz postępów konstruktorskich, cały czas istnieje potrzeba doskonalenia istniejących urządzeń, w cela tym samym poprawienia ich parametrów pracy takich jak: selektywność, czułość, powtarzalność oraz niezawodność pomiarów. W tym celu wykorzystywane są najnowsze osiągnięcia techniki oraz nowe technologie. Wśród nich z pewnością można wyróżnić nanotechnologie, które stosuje się w celu poprawy jakości biodetekcji oraz możliwości analizy na poziomie molekularnym. Nanotechnologie stanowią ogniwo łączące dwie dziedziny naukowe – naukę o materiałach (na poziomie nanoskali) oraz biochemię. Przykładem wykorzystania nanotechnologii są amperometryczne immunosensory [28, 29]. Wyraźny trend stanowią biosensory, które mogłyby dokonywać jednoczesnej detekcji kilku analitów. Urządzenia te mogłyby być stosowane w ochronie środowiska przy detekcji zanieczyszczeń oraz w medycynie do wykrywania czynników chorobotwórczych. Zastosowanie tego typu biosensorów skracałoby czas detekcji (w porównaniu z czasem wykrywanie pojedynczych analitów) oraz minimalizowałoby rozmiar potrzebnej do analizy próbki. Prace nad rozwojem multianalitowych immunosensorów prowadzone były między innymi przez Gonzaleza-Martineza [30, 28]. Obecnie powszechnie stosowane są również aptamery pełniące rolę elementów czułych w warstwie bioreceptorowej. Aptamerami mogą być sztuczne oligonukleotydy, fragmenty kwasów nukleinowych, które oznaczają się wysoką selektywnością [37]. Wśród obserwowanych trendów wyjątkowo duży potencjał prezentuje zastosowanie grafenu w biosensorach [7]. Grafen, w porównaniu z innymi nanomateriałami, charakteryzuje się większą przewodnością elektryczną, elastycznością, stabilnością chemiczną i termiczną oraz umożliwia pokrycie nim dużych powierzchni. Zastosowaniom grafenu w konstrukcjach biosensometrycznych poświęca się coraz więcej miejsca [31].
5. Podsumowanie Na podstawie przeprowadzonych analiz, biorąc pod uwagę różnorodność zastosowań biosensorów można jasno stwierdzić, że czujniki mające w warstwie receptorowej element biologiczny należą do zagadnień rozwojowych. Mimo bardzo dużej liczby wykonanych w tym zakresie prac, biosensory w dalszym ciągu stanowią ogromne pole badawcze.
Bibliografia 1. Thévenot D., Toth K., Durst R., Wilson G., Electrochemical biosensors: recommended definitions and classification, Technical Report, ”Biosensors and Bioelectronics”, Vol. 16, 1-2/2001, 121-131, DOI: 10.1016/S0956-5663(01)00115-4. 2. Sulak M.T., Erhan E., Keskinler B., Amperometric Phenol Biosensor Based on Horseradish Peroxidase Entrapped PVF and PPy Composite Film Coated GC electrode, “Applied Biochemistry and Biotechnology”, Vol. 160, 3/2010, 856867, DOI: 10.1007/s12010-009-8534-y. 3. Verma N., Singh M., Biosensors for Heavy Metals, “Biometals”, Vol. 18, 2/2005, 121-129, DOI: 10.1007/s10534004-5787-3.
4. Gil G., Mitchell R., Chang S., Gu M., A biosensor for the detection of gas toxicity using a recombinant bioluminescent bacterium, “Biosensors and Bioelectronics”, Vol. 15, 1-2/2000, 23-30, DOI: 10.1016/S0956-5663(99)00074-3. 5. Kołwzan B., Zastosowanie czujników biologicznych (biosensorów) do oceny jakości wody, „Ochrona Środowiska”, Vol. 31, Nr 4/2009, 3-14. 6. Tothill I.E., Biosensors for cancer marker diagnosis, “Seminars in Cell & Developmental Biology”, Vol. 20, 1/2009, 55-62, DOI: 10.1016/j.semcdb.2009.01.015. 7. Cynk P., Gaweł E., Zastosowanie biosensorów w diagnostyce choroby nowotworowej,” Przegląd Medyczny Uniwersytetu Rzeszowskiego i Narodowego Instytutu Leków w Warszawie”, Nr 3, 2012, 373-378. 8. Transparency Market Research., Biosensors Market (Electrochemical, Optical, Piezoelectric & Thermistor) – Global Industry Analysis, Size, Share, Growth, Trends and Forecast, 2012–2018, 2013-06-27, [www.transparencymarketresearch. com/biosensors-market.html]. 9. Brzózka Z., Wróblewski W., Sensory chemiczne, Oficyna Wydawnicza Politechniki Warszawskiej, Warszawa 1999. 10. Kłos-Witkowska A., Biosensory proteinowe i ich właściwości fluorescencyjne, „Pomiary Automatyka Kontrola”, Vol. 60, 6/2014, 378-381. 11. Kłos-Witkowska A., Biosensory i sensory fluorescencyjne, “Pomiary Automatyka Kontrola”, Vol. 60, 1/2014, 3-5. 12. Bozkurt S., Cavas L., Can Hg (II) be Determined via Quenching of the Emission of Green Fluorescent Protein from Anemonia sulcata var. smaragdina?, ”Applied Biochemistry and Biotechnology”, Vol. 158, 1/2009, 51-58, DOI: 10.1007/ s12010-008-8435-5. 13. Que X., Tang D., Xia B., Lu X., Tang D., Gold nanocatalyst-based immunosensing strategy accompanying catalytic reduction of 4-nitrophenol for sensitive monitoring of chloamphenicol residue, “Analytica Chimica Acta”, 830/2014, 42-48, DOI: 10.1016/j.aca.2014.04.051. 14. Alvarez S., Li Ch., Chiang C., Shuller I., Sailor M., A Label-Free Porous Alumina Interferomatric Immunosensors, “ASC Nano”, 10/2009, 3301-3307, DOI: 10.1021/nn900825q. 15. Pickup J., Hussain F., Evans N., Rolinski O., Birch D., Fluorescence-based glucose sensors, ”Biosensors and Bioelectronics”, Vol. 20, 12/2005, 2555-2565. 16. Tombelli S., Minunni M., Luzi E., Mascini M., Aptamer-based biosensors for the detection of HIV-1 Tat protein, “Bioelectrochemistry”, Vol. 67, 2/2005, 135-141, DOI: 10.1016/j.bioelechem.2004.04.011. 17. Meric B., Kerman K., Ozkan D., Kara P., Erensoy S., Akarca U., Mascini M., Ozsoz M., Electrochemical DNA biosensor for the detection of TT and Hepatitis B virus from PCR amplified real samples by using methylene blue, ”Talanta”, Vol. 56, 1/2002, 837-846, DOI: 10.1016/S00399140(01)00650-6. 18. Murugaboopathi G., Parthasarathy V., Chellaram C., Prem Anand T., Vinurajkumar S., Application of Biosensors in Food Industry, “Biosciences Biotechnology Research Asia”, Vol. 10, 2/2013, 711-714, DOI: 10.13005/bbra/1185. 19. Rustagi S., Kumar P., Biosensor and It’s Application in Food Industry, “Advances in Bioresearch”, Vol. 4, 2/2013, 168-170. 20. Richter E., Biosensors: Applications for Dairy Food Industry, ”Journal of Dairy Science”, Vol. 76, 10/1993, 3114-3117. 21. Leonard P., Hearty S., Brennan J., Dunne L., Quinn J., Chakraborty T., O’Kennedy R., Advances in biosensors for detection of pathogens in food and water, “Enzyme and Microbial Technology”, Vol. 32, 1/2003, 3-13, DOI: 10.1016/ S0141-0229(02)00232-6. 22. Bontidean J., Ahlqvist J., Mulchandani A., Chen W., Bae W., Mehra R., Mortari A., Csöregi E., Novel synthetic phytochelatin-based capacitive biosensor for heavy metal ion
39
Biosensory
detection, “Biosensors and Bioelectonics”, Vol. 18, 5-6/2003, 547-553, DOI: 10.1016/S0956-5663(03)00026-5. 23. Bartoszcze M., Methods of biological weapon threats detection, ”Przegląd Epidemiologiczny”, Vol. 57, 2/2003, 369-376. 24. Burnworth M., Rowan S, Weder Ch., Fluorescent Sensors for the Detection of Chemical Warfare Agents, “Chemistry”, Vol. 13, 28/2007, 7828-7836. 25. Morris M., Fluorescent biosensors – Probing protein kinase function in cancer and drug discovery, ”Biochimica et Biophysica Acta (BBA) – Proteins and Proteomics”, Vol. 1834, 7/2013, 1387-1395, DOI: 10.1016/j.bbapap.2013.01.025. 26. Giulano K., Taylor L., Fluorescent-protein biosensors: new tools for drug discovery, “Trends in Biotechnology”, Vol. 16, 3/1998, 135-140. 27. Niu W., Guo J., Expanding the chemistry of fluorescent protein biosensors through genetic incorporating of unnatural amino acids, “Molecular bioSystems”, Vol. 9, 12/2013, 2961-2970, DOI: 10.1039/c3mb70204a. 28. Rodriguez-Mozaz S., Maro M., Lopez de Alda M., Barcelo D., Biosensors for environmental applications: future development trends, “Pure and Applied Chemistry”, Vol. 76, 4/2004, 723-752. 29. Kossek S., Padeste C., Tiefenauer L., Siegenthaler H., Localization of individual biomolecules on sensor surfaces, “Biosensors and Bioelectronics”, Vol. 13, 1/1998, 31-43, DOI: 10.1016/S0956-5663(97)00081-X. 30. Gonzales-Martines M., Puchades R., Maquieira A., On– line immunoanalysis for environmental pollutans: from bach assays to automated sensors, “Trends in Analytical Chemistry”, Vol. 18, 3/1999, 204-218.
31. Myung S., Solanki A., Kim C., Park J., Kim K., Lee K., Graphene-Encapsulated Nanoparticle-Based Biosensors for Selective Detection of Cancer Biomarkers, “ Advanced Materials 23, 2011, 2221-2225. 32. Chen H., Q-Y Hu., J-H Jiang., G-L Schen., R-Q Yu, Construction of supported lipid membrane modified piezoelectric biosensor for sensitive assay of cholera toxin based on surface-agglutination of ganglioside-bearing liposomes, “Analytica Chimica Acta”, Vol. 657, 2/2010, 204-209, DOI: 10.1016/j.aca.2009.10.036. 33. Lian W., Wu D., Lim DV., Jin S, Sensitive detection of multiplex toxins using antibody microarray, “Analytical Biochemistry”, Vol. 401, 2/2010, 271-279, DOI: 10.1016/ j.ab.2010.02.040. 34. Kirsch J., Siltanen Ch., Zhou Q., Revzin A, Simonian A, Biosensor technology: recent advances in threat agent detection and medicine, “Chemical Society Reviews”, Vol. 42, 22/2013, 8733-8768, DOI: 10.1039/c3cs60141b. 35. Altintas Z., Tothil I., Biomarkers and biosensors for the early diagnosis of lung cancer, “Sensors and Actuators B: Chemical”, Vol. 188, 2013, 988-998, DOI: 10.1016/ j.snb.2013.07.078. 36. Dargaville T, Ferrugia B, Broadbent J., Pace S, Upton Z., Voelcker N, Sensors and imaging for wound healing: A review, “Biosensors and Bioelectronics”, Vol. 41, 2013, 30-42, DOI: 10.1016/j.bios.2012.09.029. 37. Thakur M., Ragavan K., Biosensors in food processing, “Journal of Food Science and Technology”, Vol. 50, 4/2013, 625-641, DOI: 10.1007/s13197-012-0783-z.
Biosensors Abstract: This paper describes design and operation of biosensors. The examples of analytes and biological substances used in bioreceptor layer have been given. Biosensors application in medicine, food, environmental and defence industry as well as in biopharmaceutical research have been presented. Trends and prospects of the development this type of sensors have been shown. Keywords: biosensor, sensor, analyte, bioreceptor layer, transducer layer
dr Aleksandra Kłos-Witkowska awitkowska@ath.bielsko.pl
Adiunkt w Katedrze Elektrotechniki i Automatyki na Wydziale Budowy Maszyn i Informatyki Akademii Techniczno-Humanistycznej. Zainteresowania naukowe: sensory i biosensory.
40
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015, 41–47, DOI: 10.14313/PAR_217/41
Układ elektroniczny cyfrowego syntezatora konduktancji do symulacji dużych rezystancji Jacek Korytkowski
Przemysłowy Instytut Automatyki i Pomiarów PIAP, Al. Jerozolimskie 202, 02-486 Warszawa
Streszczenie: W artykule przedstawiono nowy układ cyfrowej syntezy konduktancji, przeznaczony
do symulacji dużych wartości rezystancji, złożony ze wzmacniaczy monolitycznych oraz cyfrowo sterowanego monolitycznego przetwornika cyfrowo-analogowego. Podano opis charakterystyki symulowanej konduktancji i rezystancji w funkcji sterującego sygnału cyfrowego. Przedstawiono schemat i wyniki badań charakterystyki modelowego układu symulatora konduktancji w przedziale zmian od 100 nS do 1 nS, co odpowiada zmianom rezystancji od 10 MΩ do 1000 MΩ. Układ modelowy realizuje cyfrową symulację charakterystyki konduktancji o błędach nieliniowości o wartościach poniżej 0,02% odnoszonych do pełnego zakresu symulacji 100 nS. Dla charakterystyki układu nieliniowej cyfrowej symulacji rezystancji błędy odnoszone do wartości aktualnie symulowanej rezystancji w przedziale od wartości 10 MΩ do wartości 100 MΩ są mniejsze od 0,3%, a w przedziale do 1000 MΩ błędy względne symulowanej rezystancji są mniejsze od 1%. Słowa kluczowe: wzmacniacz monolityczny, monolityczny przetwornik cyfrowo-analogowy, symulacja konduktancji, symulacja rezystancji
1. Wstęp Symulowanie rezystancji jest potrzebne we współczesnych mikroprocesorowych urządzeniach kontroli właściwości izolacyjnych sprzętu elektrycznego i elektronicznego w celu sprawdzania mierników pomiaru rezystancji o dużych wartościach. Symulatory te stanowią wyposażenie testerów przeznaczonych zarówno dla producentów sprzętu, jak i dla użytkowników sprzętu w celu zapewnienia bezpieczeństwa w trakcie eksploatacji tego sprzętu. Opisy sterowanych cyfrowo symulatorów rezystancji dużych (GΩ) są nieliczne w polskiej literaturze technicznej [1, 2]. Są znane publikacje [3–8] dotyczące metod wzorcowania mierników dużych rezystancji oraz symulatorów do wzorcowania megaomomierzy, jednak w tych publikacje nie są poruszane zagadnienia elektronicznych układów bezpośredniego cyfrowego sterowania symulowanej rezystancji. Różne sterowane cyfrowo symulatory konduktancji i rezystancji autor opisał w numerach 9/2013 [9], 4/2014 [10] miesięcznika Pomiary Automatyka Robotyka oraz w książce [11]. Nowy opracowany przez autora układ symulatora konduktancji do symulacji dużych wartości rezystancji zostanie opisany w niniejszym artykule. Układ ten należy do grupy układów nazywanych syntezatorami konduktancji (ang. conductance
Autor korespondujący: Jacek Korytkowski, jkorytkowski@piap.pl Artykuł recenzowany nadesłany 10.07.2015 r., przyjęty do druku 18.08.2015 r. Zezwala się na korzystanie z artykułu na warunkach licencji Creative Commons Uznanie autorstwa 3.0
synthesizers). Są to układy syntezy konduktancji wykorzystujące monolityczny przetwornik cyfrowo-analogowy oraz precyzyjne wzmacniacze monolityczne. Syntezator ten umożliwia wytwarzanie cyfrowo sterowanej konduktancji, bazując na wartości odniesienia rezystancji rezystora dokładnego i na wartości odpowiednio cyfrowo sterowanego wzmocnienia sygnału prądowego w układzie elektronicznym z przetwornikiem cyfrowo-analogowym i z układem wzmacniaczy monolitycznych. Układ syntezatora konduktancji, będący przedmiotem artykułu, bazuje na przetworniku cyfrowo-analogowym [12] 12-bitowym typu AD7545AKNZ [13]. Opracowany układ realizuje swoją funkcję przez proporcjonalne sterowanie sygnałem cyfrowym współczynnika wzmocnienia napięcia, które jest proporcjonalne do wartości napięcia na zaciskach wyjściowych symulatora, a napięcie to jest przetwarzane na prąd wymuszany między dwoma zaciskami wyjściowymi syntezatora. Wartość symulowanej konduktancji jest proporcjonalna do wartości wzmocnienia prądu oraz do wartości cyfrowego sterującego sygnału wejściowego. Układ syntezatora ma wspólny punkt sygnałowy napięciowego poziomu odniesienia („zero zasilania 0 V”) połączony z jednym z dwu zacisków wyjściowych syntezatora łączonych bezpośrednio z układem pomiaru konduktancji lub pomiaru rezystancji, dla którego realizowana jest symulacja. Dzięki temu układ współpracy syntezatora z układem pomiaru konduktancji lub rezystancji jest odporny na zakłócające prądy pojemnościowe o częstotliwości 50 Hz sieci zasilającej. Syntezatory dużych rezystancji charakteryzują się małą wartością prądu na zaciskach wyjściowych syntezatora, rzędu 1000 nA. Z tego powodu precyzyjny monolityczny wzmacniacz formujący prąd wyjściowy powinien mieć prąd polaryzacji wejścia nie większy niż 0,5 nA. Syntezatory dużych rezystancji są przystosowane do pracy przy dość dużym napięciu wyjściowym rzędu kilkunastu woltów. Użyty do sprawdzenia
41
Układ elektroniczny cyfrowego syntezatora konduktancji do symulacji dużych rezystancji
dokładności charakterystyki układu modelowego syntezatora dokładny miernik cyfrowy firmy Keithley typu 2002 na zakresach 20 MΩ, 200 MΩ oraz 1 GΩ stosuje napięcie wyjściowe do 14 V. Z tego powodu w układzie syntezatora zastosowano podwyższone napięcia zasilające ±18 V, co zapewniło napięciowe pole pracy wzmacniaczy przekraczające ±15 V. Z przeglądu współczesnych wzmacniaczy monolitycznych precyzyjnych [14] wybrano do realizacji syntezatora wzmacniacz monolityczny typu LT1097CN8 [15] oraz wzmacniacze monolityczne specjalizowane typu LT1168C [16], które spełniają powyższe wymagania.
-IN 2
WA R1=24,7 k
+
_
+IN 3
WB
R7 =30 k
RG 8
RG 1
Rys. 1. Schemat funkcjonalny wzmacniacza specjalizowanego typu LT1168C Fig. 1. Functional block diagram of the instrumentation amplifier LT1168C
fikowaną wersję układu wzmacniającego zawierającego trzy wzmacniacze operacyjne z dodatkowym stopniem na dwu tranzystorach npn wzmocnienia prądu wejściowego. Ten stopień wzmocnienia prądu wejściowego jest odpowiednio strojony, by uzyskać zerową wartość wejściowego napięcia niezrównoważenia całego wzmacniacza LT1168C. Korzystając z opisów wzmacniacza AD8428 [17] na rys. 1 został przedstawiony uproszczony schemat funkcjonalny wzmacniacza LT1168C. Na tym schemacie zostały pominięte źródła prądowe i źródła napięciowe reprezentujące takie parametry wzmacniaczy składowych, jak wejściowe napięcia niezrównoważenia oraz prądy polaryzacji wejść, których wartości są traktowane jako pomijalne. Pominięto także kondensatory zapewniające stabilną pracę układu w zakresie wzmocnień napięcia od 1 V/V do 1000 V/V oraz obwody zasilania wzmacniaczy. Jeżeli dla przedstawionego na rys. 1 schematu przyjmiemy, że wartości wzmocnień napięciowych (w pętli otwartej) wzmacniaczy składowych WA, WB oraz WC są nieskończenie duże,
U4=1052(USXC – 100 R1IS) więc: USXC 100 R1IS , a stąd: XC Gwy ˷ 100 R1
W4
+ _
1 RG4=47Ω
W2 _ U2 = −US =UREF
W1
+
+
2
R8 =30 k
RG
R1=100 kΩ
8
OUT Uwy 6
REF 5
U1
8
_
R2=24,7 k
+
U1= 100 R1 IS
US
UW1W2 WC
W układzie elektronicznym syntezatora konduktancji wykorzystano monolityczne wzmacniacze specjalizowane realizujące algorytm różnicy dwu sygnałów napięciowych, przy czym wzmocnienie tej różnicy sygnałów jest ustalane tylko jednym dokładnym rezystorem RG w szerokim zakresie, na przykład od wartości 1 V/V do 1000 V/V. Pozwala to na realizację analogowych układów sumujących przy zastosowaniu minimalnej liczby kosztownych rezystorów dokładnych. Wzmacniacze specjalizowane („instrumentation amplifiers”) realizujące ten algorytm oferują takie firmy jak Analog Devices (np. AD8221, AD8223, AD8422, AD8428) oraz Linear Technology (np. LT1168C). Wzmacniacze te mają bardzo dobre parametry charakterystyczne dla wzmacniaczy precyzyjnych w zakresie: małych wartości napięć niezrównoważenia, małych dryftów temperaturowych napięć niezrównoważenia, małych wartości prądów polaryzacji wejść, bardzo dużych wartości rezystancji dla napięcia wspólnego oraz zapewniają bardzo dobrą liniowość charakterystyki, a więc małe błędy współczynnika wzmocnienia napięciowego realizowanego algorytmu. Wzmacniacze są przystosowane do pracy przy napięciach zasilania do ±18 V lub ±20 V, są przydatne do realizacji układów syntezatorów dużych rezystancji. Wzmacniacze te są realizowane w technologii monolitycznej z wykorzystaniem laserowego strojenia wartości rezystorów dla zapewnienia właściwych parametrów układu monolitycznego. Zastosowany układ monolityczny LT1168C stanowi zmody-
IS
R6=30 k
_
2. Zasada działania syntezatora dużych rezystancji
1
R5=30 k
+ _
CA
_
8 1
1 RG1= 498,99Ω
W3
+
U3 = − (−US XC ) = +US XC
AGND (0V)
XC= a12-1+a22-2+a32-3+ ….+ an2-n
Rys. 2. Schemat uproszczony syntezatora konduktancji do symulacji dużych wartości rezystancji Fig. 2. The simple circuits diagram of conductance synthesizer for simulation great worth of resistance
42
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Jacek Korytkowski
to napięcie wyjściowe UW1W2 pierwszego stopnia wzmocnienia opisze równanie: U W1W 2 = (U 1 − U 2 )
R1 + R2 + RG R + R2 = (U 1 − U 2 )( 1 + 1). (1) RG RG
Dla podanych na schemacie wartości rezystancji R5 = R6 = R7 = R8 wzmocnienie napięciowe drugiego stopnia wzmacniacza składowego WC jest równe jedności, wzmacniacz ten służy do przetworzenia różnicowego napięcia wyjściowego stopnia pierwszego UW1W2 na napięcie wyjściowe Uwy odnoszone do punktu wspólnego układu wzmacniacza (zwanego „0 V”). Charakterystykę wzmacniacza LT1168C opisuje następujące równanie:
Uwy=(U 1 − U 2 )(
49, 4 kΩ + 1) (2) RG
Przy braku rezystora RG (przerwa między końcówkami 1 oraz 8, RG = ∞) wzmocnienie napięciowe wzmacniacza jest równe 1 V/V. Uproszczony schemat syntezatora konduktancji został podany na rys. 2. W układzie zastosowano jako W1, W2 oraz W4 monolityczne wzmacniacze specjalizowane typu LT1168C o charakterystyce opisanej równaniem (2). Jako wzmacniacz W3 zastosowano klasyczny precyzyjny monolityczny wzmacniacz operacyjny typu LT1097CN8. Taki układ syntezatora konduktancji do symulacji dużych wartości rezystancji został opracowany w Przemysłowym Instytucie Automatyki i Pomiarów PIAP w Warszawie i został oznaczony symbolem ZK213AI100nS. Zakres zmian rezystancji od 10 MΩ (100 nS) do 1000 MΩ (1 nS) umożliwia sprawdzanie mierników rezystancji izolacji. Ponieważ parametr przewodności elektrycznej jest raczej rzadko stosowany, należy przypomnieć, że jednostką przewodności elektrycznej jest 1 S zwany jednym simensem, a przewodność jednego simensa 1 S odpowiada oporności jednego oma 1 Ω. Układ syntezatora jest układem aktywnym, który wymusza prąd IS na swoich zaciskach wyjściowych „1” i „2”. Prąd ten ma w przybliżeniu wartość proporcjonalną do iloczynu USXC, gdzie US jest napięciem między zaciskami wyjściowymi „1” i „2”, XC stanowi wartość cyfrowego sygnału sterującego. Współczynnik proporcjonalności stanowi odwrotność wyrażenia 100 R1 (1/100R1), gdzie wartość 100 V/V jest współczynnikiem wzmocnienia napięciowego wzmacniacza W1 wynikającym z wartości rezystancji RG1 = 498,99 Ω. Zależność prądu IS od iloczynu USXC wynika z działania wzmacniacza W4, który dzięki bardzo małej wartości rezystora RG4 = 47 Ω ma bardzo dużą wartość wzmocnienia napięciowego, przekraczającą nieco 1000 V/V. Układ wzmacniacza W4 wymusza prąd IS na wejściu syntezatora. Układ wzmacniacza W4 o dużym wzmocnieniu, wynoszącym 1052 V/V, opisuje równanie: U4 = 1052(USXC – 100 R1IS). (3) Prąd IS po przekształceniach równania (3) będzie opisany wzorem:
IS =
U SX C U4 − , (4) 100R1 100 R1 1052
przy sterującym sygnale cyfrowym XC = 1 drugi składnik po prawej stronie równania jest przeszło 1000 razy mniejszy od składnika pierwszego, gdyż napięcie U4 jest nieco mniejsze od napięcia US. Z równania (4) wynikają dwa wnioski: −−wymuszany prąd w symulatorze wykazuje z niewielkim błędem zależność proporcjonalną od sygnału cyfrowego XC według wzoru:
IS =
U SX C . (5) 100R1
−−podczas symulacji bardzo małych wartości konduktancji dla sygnału cyfrowego XC << 1 należy skorygować stały błąd wynikający ze wzoru (4). Korzystając z przybliżonej zależności (5) można opisać symulowaną konduktancję Gwy między zaciskami „1” i „2” następującym wzorem:
Gwy =
IS XC , (6) ≈ US 100R1
gdzie liczba 100 jest współczynnikiem wzmocnienia wzmacniacza W1 liczonym w V/V, a R1 stanowi wartość rezystancji dokładnego rezystora. Wracając do schematu podanego na rys. 2 można omówić działanie układu syntezatora konduktancji. Wzmacniacz specjalizowany W2 o dokładnym wzmocnieniu napięciowym 1 V/V, w wyniku braku rezystora między punktami 1 i 8 (RG2 = ∞) dokonuje inwersji napięcia na wyjściu syntezatora US na napięcie ujemne: U2 = − US. (7) Napięcie – US stanowi napięcie referencyjne UREF = U2 przetwornika cyfrowo-analogowego CA. UREF = U2 = − US. (8) Wzmacniacz W2 realizuje swoją funkcję praktycznie izolując punkt „1” wyjścia syntezatora od wejścia napięcia referencyjnego przetwornika CA. Rezystancja wejściowa wzmacniacza W2 (LT1168C) jest większa od 200 GΩ (typowo 1250 GΩ). Zastosowany w układzie syntezatora typ przetwornika CA [12] wymaga stosowania na wyjściu wzmacniacza operacyjnego inwersyjnego W3. Wzmacniacz W3 równoważy prądy formowane w przetworniku CA, według sygnału cyfrowego sterującego XC, z prądem swojego ujemnego sprzężenia zwrotnego przez rezystor zawarty wewnątrz przetwornika CA. Rezystor ujemnego sprzężenia zwrotnego inwersyjnego wzmacniacza W3 jest zawarty w scalonym przetworniku CA i ma takie same współczynniki temperaturowe zmian rezystancji od temperatury jak i pozostałe rezystory wewnętrzne tego przetwornika. Ogranicza to do minimum wpływ zmian temperatury nagrzewania własnego i zmian temperatury otoczenia na sygnał wyjściowy napięciowy U3. Przetwornik CA ze wzmacniaczem inwersyjnym W3 formuje sygnał według wzoru:
U 3 = − UREF XC = − (− US XC) = +USXC (9)
43
Układ elektroniczny cyfrowego syntezatora konduktancji do symulacji dużych rezystancji
Układ przetwarzania napięcia U3 na sygnał prądowy IS syntezatora jest realizowany za pomocą wzmacniaczy W4 oraz W1 typu LT1168C. Wzmacniacz W1 o dokładnym wzmocnieniu napięciowym 100 V/V nastawionym za pomocą rezystora RG1 = 498,99 Ω formuje sygnał napięciowy U1 proporcjonalny do wartości prądu IS syntezatora według wzoru:
Opisany układ syntezatora konduktancji pracuje prawidłowo w zakresie zmian symulowanej rezystancji od 10 MΩ do 1 GΩ.
3. Opis modelu doświadczalnego syntezatora dużych rezystancji
U1 = 100 R1 IS. (10) Prąd wyjściowy IS syntezatora jest wymuszany przez wzmacniacz W4. Wzmacniacz W4 o bardzo dużej wartości wzmocnienia napięciowego wynoszącej 1052 V/V wynikającego z wartości rezystora RG4 = 47 Ω porównuje doprowadzone na swoje wejście „−” napięcie U3 z napięciem wyjściowym U1 ze wzmacniacza U4 doprowadzonym na wejście „+”. Napięcie wyjściowe wzmacniacza W4 oznaczone U4, które wymusza prąd IS pobierany z wyjścia syntezatora „1” zostało opisane wzorem (3). Równanie prądu IS zostało opisane wzorem (4), z którego wynika wzór (6) opisujący charakterystykę syntezatora konduktancji. Podstawiając do wzoru (6) wartość dokładnego rezystora R1 = 100 kΩ otrzymamy następujący opis charakterystyki syntezatora konduktancji przy zastosowaniu n-bitowego przetwornika CA: Gwy = 100 ( a12-1 + a22-2 + a32-3 + … an2-n) nS .
. (12)
Pełny schemat układu syntezatora rezystancji o oznaczeniu ZK213AI100nS został podany na rys. 3. W celu uzyskania lepszej przejrzystości na schemacie (rys. 3) nie umieszczono na nim zastosowanych kondensatorów odprzęgających o pojemności 680 nF dołączonych między wspólny punkt AGND do końcówek 7 poszczególnych wzmacniaczy W1, W2, W3, W4 dla dodatnich napięć zasilających +Uz oraz dołączonych między wspólny punkt AGND do końcówek 4 tych wzmacniaczy dla ujemnych napięć zasilających –Uz. W celu rozszerzenia roboczego pola napięć wzmacniaczy do ±15 V, czego wymagają układy pomiaru rezystancji, w układzie zastosowano napięcia zasilające tych wzmacniaczy +Uz = +18 V ±1,5 V oraz –Uz = –18 V ±1,5 V. Przetwornik CA typu AD7545AKNZ [13] ma doprowadzone dodatnie napięcie zasilające +15 V na końcówkę 18 z diody Zenera D6. Dla tego przetwornika zastosowano dwa kondensatory odprzęgające o pojemności 680 nF między końcówką 18 a AGND, oraz między końcówką 18 a DGND, stanowiącym wspólny punkt zasilania dla sygnałów cyfrowych – kon-
(11)
Syntezator konduktancji może służyć do symulacji dużych wartości rezystancji. Charakterystyka symulacji rezystancji omawianego syntezatora konduktancji jest opisana wzorem:
Nastawy wieloobrotowych potencjometrów strojeniowych P11 jest strojony aby wzmocnienie napięciowe W1 wynosiło 100,00 V/V ±1000ppm. P31 jest strojony aby dla sygnału cyfrowego XC: a7=1, a9=1, a12=1 symulowana wartość rezystancji na wyjściu wynosiła 999 MΩ ±2 MΩ (średnia z dziesięciu odczytów pomiarów). P1 i P2 są strojone dla polaryzacji „+” na zacisku 1 wyjścia tak, aby maksymalna wartość symulowanej rezystancji wynosiła 10,0024 MΩ ±50 ppm.
+Uz −Uz 7
U1= 100 R1 IS
C2=3,3 µF
W4
+ _
3 2
R8=220k
4
1
8
5
RG4=R9=47Ω
IS
R1=100 kΩ
R4=4,7k
1„+” US
R5=4,7k 2 3 k
+15V
+Uz −Uz 4
7
− +
R2= 500Ω
7
R6=4,7k
1
8
P11=500k
W2
560 Ω +Uz
P1=100Ω
P2=200Ω
4
− +
2 3
5
8 1
RG1= 498,99Ω
W1
+Uz −Uz
18 19
20
C31=3,3µF
1
U2 =−US =UREF CA AD7545A
5
3
D1 D2 R12=
2
D3 +Uz
D4
R7=4,7k
R3= 100k
7 2 3
9,1 M
4
_
W3
+ 8
R10= 33,2k
DGND
D6 +Uz=+18V
+Uz -Uz
U3=US XC
1
0V
P31= 20 kΩ R11= 33,2k
2 „−”
D5
−Uz
DGND= – 0,5V 2 kΩ -Uz= -18V
AGND GND (0 V)
XC=a12-1+a22-2+a32-3+…+a122-12
Rys. 3. Schemat syntezatora konduktancji ZK213AI100nS Fig. 3. The schematic of ZK213AI100nS conductance synthesizer
44
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Jacek Korytkowski
densatorów tych nie pokazano na schemacie. Dla sygnałów cyfrowych przetwornika AD7545AKNZ zastosowano osobny wspólny punkt zasilania nazwany DGND, zasilany z dodatkowego napięcia ujemnego o wartości około –0,5 V, a uzyskanego z odpowiednio zasilanej ujemnym napięciem diody krzemowej D5. Zapewniło to brak zakłócającego działania sygnałów cyfrowych na obwód syntezatora rezystancji. Schemat (rys. 3) zawiera układ wzmacniacza W3 typu LT1097CN8, który zapewnia inwersję sygnału wyjściowego U3 w stosunku do napięcia referencyjnego UREF przetwornika cyfrowo-analogowego AC. Układ tego przetwornika współpracuje ze wzmacniaczem monolitycznym W3 typu LT1097CN8 [15]. Wzmacniacz ten ma bardzo dobre właściwości: typowa wartość wejściowego napięcia niezrównoważania tylko 10 μV, typowa wartość dryftu temperaturowego napięcia niezrównoważenia 0,2 μV/°C, typowa wartość dryftu długoterminowego napięcia niezrównoważenia to 0,3 μV w okresie jednego miesiąca, typowa wartość prądu polaryzacji wejścia 40 pA oraz duża typowa wartość współczynnika wzmocnienia napięciowego wynosząca 2,5 106 V/V. Jak wynika ze wzoru (4) dokładna charakterystyka wymuszanego na wyjściu prądu IS w funkcji napięcia wyjściowego US nie jest proporcjonalna, lecz zawiera składnik zależny od napięcia wyjściowego U4 wzmacniacza W4. Dokładną charakterystykę symulatora można opisać wzorem:
Gwy
U4 U4 XC IS XC XC US US = = − = (1 − ).(13) U S 100R1 100 R1XC 1052 100 R1 XC1052
Patrząc na schemat (rys. 3) można zauważyć, że napięcie U4 jest tylko nieco mniejsze od napięcia US, gdyż spadek napięcia na rezystorze R1 od prądu IS przy nominalnym wysterowaniu symulatora wynosi tylko jedną setną napięcia US. Można przyjąć przybliżenie U4 = US. Wzór (13) przyjmuje postać następującą: Gwy =
XC 1 (1 − ) . (14) 100 R1 XC1052
Składnik drugi po prawej stronie równania można skompensować wprowadzając dodatni stały składnik korekcyjny wartości prądu IS wynikający ze wzoru (4). Dla nominalnej wartości sygnału cyfrowego XC = 1 składnik ten będzie miał wartość ok. 1052 ppm (0,1%). Jest to składnik wynikający z ograniczonej wartości wzmocnienia napięciowego wzmacniacza W4 wynoszącej 1052 V/V. W układzie z rys. 3 wprowa-
dzenie kompensacji zostało zrealizowane za pomocą dodatkowej polaryzacji wejścia wzmacniacza W3 z potencjometru P31 przez szeregowy rezystor R12 o wartości 9,1 MΩ. Jednak dla małych wartości sygnału cyfrowego, np. XC = 0,01 składnik ten będzie osiągał wartość ok. 10%. Spowodowało to wprowadzenie odpowiedniej kolejności strojenia charakterystyki symulatora. W celu uzyskania dobrych dokładności symulatora, strojeniu podlega charakterystyka tylko dla jednej polaryzacji sygnałów wejściowych. Rodzaj polaryzacji wynika z narzuconych wymagań przez miernik rezystancji lub konduktancji, dla którego przeznaczony jest symulator. W praktyce, w miernikach takich stosowana jest przeważnie dodatnia polaryzacja napięcia zacisku wejściowego 1, oznaczonego na schemacie „+” względem zacisku 2, oznaczonego na schemacie „−”. Dalej podano opis strojenia symulatora dla wybranej polaryzacji dodatniej. Przy wymaganej polaryzacji napięcia zacisku 1 ujemnej należy dokonać przestrojenia symulatora. Pierwszym etapem strojenia symulatora jest dobranie właściwego wzmocnienia napięciowego wzmacniacza W1. W tym celu należy dołączyć do symulatora miernik odbieranej rezystancji o polaryzacji dodatniej. Po wybraniu sygnału cyfrowego maksymalnego (wszystkie bity mają wartość 1) należy dołączyć woltomierz między AGND i suwak potencjometru P31. Suwak należy ustawić w takim położeniu, aby mierzone napięcie nie przekraczało ±50 μV. Następnie należy dobrać nastawę wzmocnienia wzmacniacza W1 dobierając odpowiednio nastawę suwaka potencjometru P11, aby symulowana wartość rezystancji wynosiła 10,0024 MΩ ±100 Ω. Drugim etapem strojenia jest odpowiednie dobranie nastawy potencjometru P31, aby skompensować efekt ograniczonego wzmocnienia wzmacniacza W4 przy symulacji największej wartości rezystancji 999 MΩ dla sygnału cyfrowego XC: a7 = 1, a9 = 1, a12 = 1 z niedokładnością ±2 MΩ dla średniej z 10 kolejnych pomiarów rezystancji. Trzecim etapem strojenia jest taki dobór nastaw potencjometrów P1 i P2, aby maksymalna wartość symulowanej rezystancji wynosiła 10,00244 MΩ ±50 Ω. Po zestrojeniu uzyskuje się charakterystykę konduktancji według wzoru (11). Syntezator ma zakres konduktancji od 99,9756 nS dla pełnego wysterowania sygnału XC, do 1,001 nS dla minimalnej wartości konduktancji dla minimalnego sygnału XC: a7 = 1, a9 = 1, a12 = 1. Syntezator służy do symulacji dużych wartości rezystancji według wzoru (12). Syntezator zapewnia nieliniową symulację wartości rezystancji od 10,00244 MΩ dla pełnego wysterowania sygnału XC, do 999 MΩ dla maksymalnej wartości rezystancji dla minimalnego sygnału XC: a7 = 1, a9 = 1, a12 = 1.
Tabela 1. Wartości błędów względnych nieliniowości charakterystyki syntezatora konduktancji odniesione do pełnego jego zakresu 100 nS Table 1. The values of relative errors nonlinearity characteristic of synthesizer refer to full range 100 nS
Gid nS
99,9756
80,0049
62,5000
50,0000
39,9902
25,0000
19,9951
14,9902
12,5000
Rwy MΩ
10,00270
12,50074
16,00450
20,0051
25,0153
40,0090
50,0393
66,7518
80,0463
Gwy nS
99,9730
79,99526
62,48243
49,9873
39,9755
24,9944
19,9843
14,9809
12,49277
δGwy
–26 ppm
–96 ppm
–176 ppm
–128 ppm
–147 ppm
–56 ppm
–108 ppm
–93 ppm
–72 ppm
Gid nS
10,0098
8,00782
5,00488
4,00391
2,48923
2,00196
1,61132
1,24511
1,00098
Rwy MΩ
100,0516
125,1435
200,382
250,508
402,097
500,957
621,043
805,420
1002,33
Gwy nS
9,9948
7,99083
4,99047
3,99188
2,48696
1,9962
1,61019
1,24159
0,99768
δGwy
–150 ppm
–170 ppm
–144 ppm
–120 ppm
–23 ppm
–58 ppm
–12 ppm
–35 ppm
–33 ppm
45
Układ elektroniczny cyfrowego syntezatora konduktancji do symulacji dużych rezystancji
Tabela 2. Wartości błędów względnych charakterystyki rezystancji syntezatora odniesione do wartości aktualnie symulowanych rezystancji Table 2. The values of relative errors resistance characteristic of synthesizer refer to actually simulated resistance values
Gid nS
99,9756
80,0049
62,5000
50,0000
39,9902
25,0000
19,9951
14,9902
12,5000
Rid MΩ
10,00244
12,49924
16,00000
20,00000
25,00611
40,00000
50,01221
66,7101
80,0000
Rwy MΩ
10,00270
12,50074
16,00450
20,0051
25,0153
40,0090
50,0393
66,7518
80,0463
δRwy
+26 ppm
+120 ppm
+281 ppm
+250 ppm
+350 ppm
+230 ppm
+540 ppm
+630 ppm
+580 ppm
Gid nS
10,0098
8,00782
5,00488
4,00391
2,48923
2,00196
1,61132
1,24511
1,00098
Rid MΩ
99,9024
124,878
199,805
249,756
401,730
499,510
620,610
803,140
999,020
Rwy MΩ
100,0516
125,1435
200,382
250,508
402,097
500,957
621,043
805,420
1002,33
δRwy
+1490 ppm
+2130 ppm
+2890 ppm
+3010 ppm
+920 ppm
+2900 ppm
+700 ppm
+2840 ppm
+3310 ppm
Celem badań eksperymentalnych, w których wykorzystano 12-bitowy tani przetwornik CA [13] i wzmacniacze monolityczne o umiarkowanej cenie, było sprawdzenie charakterystyki całego układu syntezatora. Uzyskano błąd nieliniowości 0,02%, nieco większy niż graniczny błąd nieliniowości tego przetwornika (relative accuracy [13]) wynoszący ±1/2 LSB (0,012 %). Największy błąd względny symulowanej rezystancji badanego modelu odniesiony do wartości aktualnie symulowanej w zakresie od 10 MΩ do 100 MΩ nie przekracza 0,15% (1500 ppm), a w zakresie od 100 MΩ do 1000 MΩ nie przekracza 0,4% (4000 ppm).
Jako rezystory R1, R2 zastosowano precyzyjne rezystory o tolerancji ±0,1% oraz o małych współczynnikach temperaturowych rezystancji ±15 ppm/°C. Rezystor R1 = 100 kΩ jest typu MF006BB1003A10 [18]. Rezystor R2 stanowi połączenie szeregowe pięciu rezystorów o rezystancji 100 Ω typu MF006BB1000A10 [18]. Rezystory R10 i R11 o rezystancji 33,2 kΩ ±0,5% mają współczynnik temperaturowy ±50 ppm/°C. Pozostałe rezystory, niedecydujące bezpośrednio o dokładności symulatora, są rezystorami o tolerancji 5%. Wieloobrotowe potencjometry strojeniowe P1, P2, P11, P31 są typu helitrim i mają współczynniki temperaturowe nie większe od 100 ppm/°C. 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, D4 stanowiące złącza kolektor–baza tranzystorów BC107 o dość dużym napięciu ograniczenia ok. 680 mV, znacznie wyższym od dodatkowego ujemnego napięcia zasilania (–0,5 V) DGND. Dla zapewnienia stabilnej pracy układu wzmacniaczy objętych ujemnymi sprzężeniami zwrotnymi konieczne było zastosowanie, w miejscach podanych na schemacie, kondensatorów foliowych C2 oraz C31 o pojemności 3,3 μF typu MKSE. Po uruchomieniu układu modelowego sprawdzono charakterystyki stosując multimetr cyfrowy typ 2002 firmy Keithley. Multimetr ten na zakresie 20 MΩ zapewnia niedokładność krótkoterminową (24 h) ±50 ppm, a na zakresie 1 GΩ jego niedokładność krótkoterminowa wynosi 750 ppm wartości mierzonej. Wyniki badania charakterystyki modelowego układu syntezatora konduktancji ZK213AI100nS przeznaczonego do liniowej symulacji konduktancji o zakresie zmian od 99,9756 nS do 1,001 nS podano w tab. 1. W tabeli 2 podano wyniki badania nieliniowej symulacji rezystancji w zakresie zmian od 10,00244 MΩ do 999 MΩ. Symbolem Gid oznaczono idealną wartość zadawanej konduktancji sygnałem cyfrowym. Symbolem Rid oznaczono idealną wartość zadawanej rezystancji. Symbolem Rwy oznaczono średnie wartości zmierzone multimetrem symulowanej wartości rezystancji, a symbolem Gwy oznaczono wyliczone średnie wartości symulowanej konduktancji. Z powodu niemałej krótkoterminowej niedokładności multimetru (±750 ppm/24 h), w poszczególnych punktach charakterystyki wykonywano po kilkanaście odczytów pomiarów, a w tabelach wpisano wartości średnie Rwy z tych odczytów. Ze względu na inercyjny charakter układu, po wybraniu sygnału cyfrowego danego punktu charakterystyki, pomiary rozpoczynano po odczekaniu jednej minuty. Największy błąd nieliniowości charakterystyki nie przekracza 176 ppm. Błąd przy minimalnej wartości sygnału cyfrowego (a7 = 1, a9 = 1, a12 = 1) to tylko 33 ppm.
46
P
O
M
I
A
R
Y
•
A
U
T
O
M
4. Wnioski Opracowany układ syntezatora konduktancji ZK213AI100nS umożliwia nieliniowe w funkcji zmian sygnału cyfrowego symulowanie dużych wartości rezystancji w zakresie do 100 MΩ z błędami poniżej 0,3% oraz w zakresie do 1000 MΩ – też z umiarkowanymi błędami poniżej 1%. Zaletą opisanego w artykule syntezatora rezystancji jest wspólny punkt sygnałowy AGND jego układu elektronicznego z wyjściem syntezatora oznaczonym 2 „–”, co zapewnia odporność na działania przez pojemności zakłócających źródeł prądowych o częstotliwości 50 Hz z sieci zasilającej.
Bibliografia 1. Urbański K., Kalibrator wielkich rezystancji sterowany za pomocą komputera. Komisja Metrologii PAN. Konferencja Podstawowe Problemy Metrologii PPM’98, Gliwice, 1998. 2. Szmytkiewicz J., Adjustacja kalibratorów rezystancji. Pomiary, Automatyka, Kontrola, nr 6 bis 2006. 3. Lisowski M.: Metody wzorcowania analogowych mierników bardzo dużych rezystancji. Część I: Metoda bezpośrednia. Pomiary, Automatyka, Kontrola. Vol. 49, nr 6/2003, 10–12. 4. Lisowski M., Metody wzorcowania analogowych mierników bardzo dużych rezystancji. Część II: Metoda interpolacyjna i metody pośrednie. Pomiary, Automatyka, Kontrola. Vol. 49, nr 6/2003, 12–14. 5. Lisowski M., Metody wzorcowania cyfrowych mierników bardzo dużych rezystancji. Pomiary, Automatyka, Kontrola. Vol. 51, nr 10/2005, 5–7. 6. Guzik J., Aktywny imitator rezystancji do wzorcowania megaomomierzy. Pomiary, Automatyka, Kontrola. Vol. 55, nr 9/2009, 766–768. 7. Guzik J., Pilśniak A., Rochiński P., Uogólniony model matematyczny imitatora dużych rezystancji. Materiały A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Jacek Korytkowski
Konferencji „Podstawowe Problemy Metrologii, PPM 2011”, 160–163. Krynica-Zdrój, 12–15 czerwca 2011. 8. Guzik J., Topór-Kamiński L., Imitatory rezystancji izolacji elektrycznej. Pomiary, Automatyka, Kontrola. Vol. 59, nr 6/2013, s. 542–544. 9. Korytkowski J., Układ elektroniczny cyfrowej syntezy konduktancji, Pomiary Automatyka Robotyka, nr 9/2013, 102–107. 10. Korytkowski J., Układ elektroniczny cyfrowej symulacji rezystancji o średnich wartościach. Pomiary Automatyka Robotyka, nr 4/2014, 68–74. 11. Korytkowski J.: Elektroniczne symulatory rezystancji i konduktancji w układach pomiarowych. Oficyna Wydawnicza PIAP, Warszawa 2014. 12. Korytkowski J., Układy przetwarzania cyfrowo-analogowego oraz właściwości scalonych przetworników CA. Oficyna Wydawnicza PIAP, Warszawa 2012. 13. Analog Devices, CMOS 12-Bit Buffered Multiplying DAC AD7545A. Analog Devices Inc. 2000 rev.C, http://www.analog.com/static/imported-files/data_sheets/AD7545A.pdf.
14. Korytkowski J., Liniowe i nieliniowe układy ze wzmacniaczami monolitycznymi w urządzeniach pomiarowych. Oficyna Wydawnicza PIAP, Warszawa 2011. 15. Linear Technology: LT1097, Low Cost, Low Power, Precision Op Amp, 1989, http://pdf1.alldatasheet.com/datasheet-pdf/view//70296/LINEAR/LT1097.html. 16. LINEAR TECHNOLOGY: LT1168 Low Power, Single Resistor Gain Programmable, Precision Instrumentation Amplifier. LT/LWI0906 REV A. LINEAR TECHNOLOGY CORPORATION 2000, http://www.linear.com/product/ LT1168. 17. ANALOG DEVICES: Low Noise, Low Gain Drift, G = 2000 Instrumentation Amplifier AD8428. D09731-0-4/12(A). Rev A. 2011-2012 Analog Devices. http://pl.mouser.com/pdfdocs/AD8428.pdf. 18. ROYAL OHM: PRECISION METAL FILM FIXED RESISTORS, General Specyfications. 2006-2007, http:// www.tme.eu/pl/Do cument/0027213a25a9a49cOb8760349ca3ff7c/mp0_6w.pdf.
The electronic circuit for digital controlled simulation of large worth resistances Abstract: The paper describes the electronic circuit for digital controlled conductance synthesis
including monolithic amplifies and monolithic digital-analogue converter. On fig. 3 it is shown the electronic schematic of this digital controlled conductance synthesizer. It was formulated equations as the characteristic description of this synthesizer. The experimental examination results of synthesizer model for resistance at the range from 10 MΩ to 1000 MΩ are described. The elaborated electronic circuit of resistance synthesizer have good qualities of resistance characteristic accuracy. The errors are better than 0,3% for simulation the resistance from 10 MΩ to 100 MΩ and errors are better than 1% for simulation the resistance to 1000 MΩ. Keywords: monolithic amplifier, monolithic digital-analogue converter, conductance simulation, resistance simulation
dr inż. Jacek Korytkowski, prof. PIAP jkorytkowski@piap.pl
Ukończył Wydział Elektryczny Politechniki Warszawskiej w 1956 r., doktorat 1972 r., docent 1978 r., prof. nzw. 2010 r. Kierownik Pracowni w Instytucie Elektrotechniki w latach 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 na Wydziale Elektrycznym 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: 9 wydawnictw książkowych, jest autorem lub współautorem 64 publikacji oraz 14 patentów polskich. Jest specjalistą w dziedzinie elektroniki przemysłowej.
47
NR 3/2015
48
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015, 49–54, DOI: 10.14313/PAR_217/49
Influence of the Operation Conditions on the Supercapacitors Reliability Parameters Ryszard Kopka, Wiesław Tarczyński
Opole University of Technology, Department of Electrical, Control and Computer Engineering, Sosnkowskiego 31, 45-272 Opole
Abstract: This paper presents the results of tests connected with measurements of capacitance
and equivalent series resistance of supercapacitors, depending on value of charge/discharge current. Special circuit and algorithm for carrying out measurement procedure, to determine dependency of value of designated equivalent parameters of supercapacitor on value of current, based on which such parameters are estimated, have been prepared for this purpose. A supercapacitor of capacitance 1200 F has been used for the tests. Its equivalent parameters have been determined within the range of currents from 5 A to 20 A. Reliability assessment has been carried out directly based on changes of values of these parameters. Complete testing procedure has been prepared in MATLAB/Simulink environment using xPC toolbox. Słowa kluczowe: supercapacitor, equivalent series resistance, equivalent capacitance, operation conditions, charge/discharge current
1. Introduction Supercapacitors are electronic components that have been recently introduced into operation. Special properties distinguishing them with respect from the other types of capacitors are very high capacitance and relatively small dimensions. First major applications were voltage maintenance circuits for semi-conductor memories in the microprocessor systems. Currently they are increasingly used in power supply systems as circuit improving properties of energy sources in supply circuits using batteries or accumulators. Connection of supercapacitor in series to the battery or accumulator allows decreasing internal dynamic resistance of power supply circuit what is especially important for equipment requiring high value of current during start-up e.g. starters of combustion engines [2, 5, 8]. High charge that can be accumulated by the supercapacitors enables low current consumption for a very long time or supplying of high value of current to the load for short period. In turn short charging time allows using supercapacitors in energy recovery and storage systems e.g. in mechanical vehicles during braking process. Supercapacitors are characterized by high capacitance, high power density per volume and weight, very long operation period (even up to 20 years), high number of allowable charge and discharge cycles as well as almost maintenance-free ope-
Autor korespondujący: Ryszard Kopka, r.kopka@po.opole.pl Artykuł recenzowany nadesłany 17.07.2015 r., przyjęty do druku 24.08.2015 r. Zezwala się na korzystanie z artykułu na warunkach licencji Creative Commons Uznanie autorstwa 3.0
ration. Furthermore, due to use of chemical substances based on coal and organic compounds for construction they are almost inert for the environment, what allows their disposal. The other increasingly used application is use of the supercapacitors in emergency power supply circuits for on-board systems in the passenger airplanes and in uninterruptable power supply systems for computers. Such applications of the supercapacitors set the very high requirements within the scope of reliability and correctness of operation [2, 8]. Numerous tests and observations of the supercapacitors had indicated that during their operation there are processes causing gradual degradation of their operational features. It manifests especially by decrease of capacitance and increase of value of series internal resistance. Degradation processes are dependent on such major factors as: operation temperature, value of charge and discharge current, number of charge and discharge cycles. To ensure correct operation of the equipment using supercapacitors as energy source it is necessary to get familiar with all factors influencing values of their parameters. Therefore, it is important that parameters of the given type of supercapacitors should be precisely measured before it is used and that they should be checked on a continuing basis during its operation [9]. Wide range of capacitance values of the supercapacitors from fractions of Farads to several thousands of Farads and value of series equivalent resistance from fractions of mΩ to several dozens of Ω, and specific properties of materials used for construction of supercapacitors require use of unusual circuits and methods of carrying out of the measurements as well as calculations of values of the parameters important for the given application. This paper describes circuit for charging and discharging of supercapacitor with relatively high capacitance and influence of such process on value of series capacitance and resistance. Such operation conditions of supercapacitor can be encoun-
49
Influence of the Operation Conditions on the Supercapacitors Reliability Parameters
reflect completely behavior or real capacitor during its normal operation. Primarily this model does not take into account low-frequency processes during charging and discharging as well as influence of temperature on values of capacitance. Detailed description of supercapacitors models with more developed structure can be found in [3, 6, 11]. Considering use of supercapacitors in electronic and power electronic systems it can be assumed that to assess their properties it is enough to know properties of two primary parameters that is equivalent series resistance ESR and capacitance CAC. Series internal resistance ESR is a combination of series and parallel resistance – RS and RP, respectively, and it is connected with losses of energy inside the supercapacitor that are causing it internal heating.
tered in uninterruptible power supply systems, where often decays of network voltage, voltage dips and so-called flicking phenomenon, are present. Prepared test setup allows carrying out charging and discharging processes of supercapacitor based on voltage or current source with various efficiency and frequency of repetition.
2. Supercapacitor Construction Supercapacitor construction is similar to construction of typical capacitor containing two electrodes and dielectric material located between them. Supercapacitor electrodes are made of aluminium strip covered with activated carbon and separated with thin insulation layer so-called separator. Activated carbon used, mainly in form of carbon nanotubes, characterizes with very high active area exceeding several thousand square meters at 1 gram of mass. Both electrodes are galvanically isolated by thin porous membrane, so-called separator, made of plastics. Separator is not a dielectric material as in case of traditional capacitors, but it only precludes electric shorting of both electrodes by the activated carbon. Electrodes and separator are additionally soaked with electrolyte (organic compound). Contact area between conducting electrodes and electrolyte are acting as a dielectric material and ions accumulated on this area are separated between each other on very small distances. Isolating layer created in this way precludes direct flow of charge to electrodes. Limit voltage value that does not cause damage of dielectric layer and separator is called decomposition voltage. Exceeding of this voltage results in breakdown and therefore shorting on border of the electrode and electrolyte what means almost irreversible damage of the capacitor. Value of this voltage depends mainly on temperature of the supercapacitor [1]. Although supercapacitors are classified as the group of electrochemical components, no chemical processes connected with this do not take place inside it. Charge in supercapacitor is accumulated only by polarization of the electrolyte, and it causes that charging and discharging is completely reversible process [10]. Equivalent circuit diagram of the supercapacitor is similar with respect to the construction to the model used for typical electrolytic capacitor (fig. 1). Model includes: capacitance CAC, inductance L, series resistance RS and parallel resistance RP. Capacitance CAC represents main capacitance of the capacitor between the electrodes, coil L corresponds to the inductance resulting especially from the method of electrodes assembly (e.g. harmonious arrangement, folded arrangement) and inductance of leads, while series resistance RS represents resistance of leads and resistance of ionic and electron conduction of the dielectric material. Parallel resistance RP corresponds to leakance between the electrodes. Values of model components depends of type of capacitor, its construction, capacitance and such factors are operating time, temperature, current value of voltage between the electrodes. Despite similarities in construction of supercapacitor and traditional electrolytic capacitor, they have significant differences in properties. This difference applies especially to their capacities but also in definitely different behavior of supercapacitor for direct and alternating currents and voltages both with high and low frequencies [12]. Model of the supercapacitor (fig. 1) is the first order model consisting of RLC components and therefore it is the same model with simple structure what causes that it does not
50
P
O
M
I
A
R
Y
•
A
U
T
O
M
Fig. 1. Simplified equivalent circuit diagram of supercapacitor Rys. 1. Uproszczony schemat obwodu zastępczego superkondensatora
When supercapacitors are used in power supply maintenance systems or directly in electronic equipment power and power electronic supply systems, the most important parameters is CAC value, because it decides about maximum supply time. While in case when supercapacitors are used in power supply systems characterized with high instantaneous current consumption (e.g. starting systems of combustion engines), the series resistance ESR is a critical parameters, which value should be in such case as small as possible to minimize voltage drop during current consumption. Variety of applications of the supercapacitors and requirements resulting from this fact with respect to the more important parameters caused that various types of supercapacitors, differing with capacity, allowable decomposition voltage, allowable range of ambient temperatures and internal resistance, have been introduced to the marked [4, 6].
3. Failure Processes in Supercapacitor Specific properties of supercapacitors causes that they are more and more commonly used in start-up and back-up power supply systems. Very high charge, low resistance, small dimensions and weight and ease of maintenance and operation causes that these components are currently very important element of such systems. However, use of the supercapacitors as the main components of energy, imposes on them the need to maintain very high reliability. Therefore, the key issue in such systems is continuous assessment of their technical condition. Currently used diagnostic methods are based on measurements and observation of changes in time of primary equivalent parameters of the supercapacitors that is their capacitance and series equivalent resistance. These parameters can be determined both in laboratory during diagnostics tests and in real circuits systems during their daily operation. Value of these parameters is determined based on drop or increase of voltage caused by charge or discharge current. However, it appears that parameters determined in such way are strongly dependent on value of these current. It has special meaning in case of operational diagnostics in normal operation conditions. In such case, it is often that supercapacitors are charged or discharged with various values of current and thereA
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Ryszard Kopka, Wiesław Tarczyński
fore estimated values of equivalent parameters can significantly differ from each other. All supercapacitors, regardless of the construction and capacitance, as a result of operation are subject to degradation processes manifesting especially by decrease of capacitance CAC and increase of equivalent series resistance ESR. Capacitance drop is caused by decrease of active area of carbon electrodes and therefore with decrease of amount of ions accumulated in the electrolyte. Process rate depends on operation temperature of the capacitor, number of charging and discharging cycles and values of operation voltage. Adhesion processes on collector of the electrode diminishes after a time and increasing number of charging and discharging cycles causing also decrease of amount of available ions and therefore decrease of capacitance CAC and increase of equivalent series resistance. Practically it is assumed that capacitor, where capacitance had decreased by 20% with respect to initial value or series resistance ESR increased by 100%, is treated as capacitor that cannot be operated according to its initial use [2, 12].
4. Test Setup and Measurement Procedure Supercapacitors because of their relatively very high capacitance and very small internal resistance require use the other systems and methods for measurements than in case of traditional capacitors. Precise measurements of capacitor capacitance and its changes in time are especially difficult. Measurements of capacitors parameters should be carried out at the manufacturer’s site and in some cases, especially when they are used in the power supply systems, where reliability determines the safety, also controlled during their daily operation. Results of the capacitance measurements and internal resistance of the supercapacitor depends mainly on method of the measurements. The most important factors deciding about it are time correlations between control signals and operation temperature. Therefore, the conditions and method of carrying out of the measurements and evaluation of supercapacitors properties should be adequate to operation conditions where the given capacitor will be used.
4.1. Measurement Procedure
Measurements of capacitance and equivalent series resistance of the supercapacitor can be carried out using direct or alternating sinusoidal currents and voltages. In case when direct
Fig. 3. Schematic diagram of measurement system for testing of the supercapacitor Rys. 3. Schemat systemu pomiarowego do badań superkondensatora
currents and voltages are used the value of series resistance ESR and capacitance CAC are determined based on the charge and discharge cycle of the capacitor. Typical curve of charge and discharge time cycle is presented in the fig. 2. In the first stage, supercapacitor is charged from current source with constant current I1 until rated voltage Un is reached (the first section of time, marked CC). When voltage Un is reached the supercapacitor is completely disconnected for time ts. Sudden voltage drop occurs between ends of the capacitor during disconnection. It is caused by voltage drop on internal resistance ESR, while further, smooth, decrease of voltage is caused by disappearance and charges redistribution. After time ts voltage value on capacitor reaches value Us. Then voltage source with voltage value equal to Us is connected to the capacitor, and it is maintained for third section of time, marked CV, that is approx. 10–30 min. All transient conditions connected with accumulation and migration of charges should be passed inside the supercapacitor during this time. After that, discharging process of supercapacitor starts by constant current from current source of efficiency I2 (the fourth section of time, marked CC again). The value of equivalent series resistance ESR is determined based on equation
ESR =
∆U ESR , (1) I2
where ΔUESR is a supercapacitor voltage drop caused by switching on the discharge current of value I2. While capacitance value CAC is determined from the formula
C AC =
∆QC ∆t = I 2 C , (2) ∆UC ∆UC
where ΔUC is a change of voltage on capacitor caused by discharge current I2 flowing for time ΔtC. While ΔtC is a time during which the value of voltage on capacitor changed from approx. 80% to 40% of nominal voltage value Un [7, 9].
4.2. Test Setup
Fig. 2. Supercapacitor voltage and current curves, based on which the value of capacitance CAC and equivalent series resistance ESR are determined [7] Rys. 2. Charakterystyki napięcia i natężenia prądu dla superkondensatora, na podstawie których obliczono pojemność CAC oraz zastępczą rezystancję szeregową ESR [7]
Diagram of test setup is presented in fig. 3. Tested capacitor C is located into temperature chamber T ensuring maintenance of constant ambient temperature during test. Supercapacitor C can be charged by current I1 from programmable current source PCS1, and it can be discharged by current I2 through the programmable current source PCS2. Programmable voltage source PVS3 can be connected on input of the capaci-
51
Influence of the Operation Conditions on the Supercapacitors Reliability Parameters
a)
a)
b)
b)
Fig. 4. Example of determination the equivalent parameters of the supercapacitor during discharging cycle for I2 = 20 A, a) the capacity C, b) the equivalent series resistance ESR Rys. 4. Przykład wyznaczania parametrów zastępczych superkondensatora podczas cyklu rozładowania dla I2 = 20 A, a) pojemności C, b) zastępczej rezystancji szeregowej ESR
Fig. 5. Changes of values of the equivalent parameters of the supercapacitors depending on the value of discharge current, a) the capacity C, b) the equivalent series resistance ESR Rys. 5. Zmiany wartości parametrów zastępczych superkondensatora w zależności od wartości prądu rozładowania, a) pojemności C, b) zastępczej rezystancji szeregowej ESR
tor C by the relay S3. Voltage UC on the capacitor is measured by use of analogue-digital converter A/D. All elements of the measuring system are controlled by control circuit, equipped with proper software including measurement procedure. Control system based on PC with data acquisition card provides value of charge current I1 in a digital form to output of current source PCS1. Charging process of capacitor C starts when the relay S1 is switched on. When the relay S1 is switched on the measurement of voltage UC on supercapacitor by A/D converter starts. Charging of capacitor C lasts until voltage UC reaches defined maximum value Umax = 2.5 V. Then current source PCS1 is disconnected by opening of relay S1. After the relay S1 is switched off the voltage on capacitor is followed for tS = 2–5 s. When this time expires, based on voltage measurement, the value of voltage US on capacitor C is determined by the control system PC, and it is supplied in digital form to programmable voltage source PVS3. Next the relay S3 is switched on. The time of switching on the S3 relay depends on the measurements procedure and it can lasts from several seconds to approx. 30 minutes. When this time expires, the relay S3 is switched off and S2 relay is switched on connecting programmable current source PCS2 to the capacitor C. Polarization of current I2 is opposite to the polarization of current I1, what results in discharging of capacitor C. Results of the measurements of voltage UC are archived in the memory of control system PC. When the measurement is completed results from the memory of control system PC are sent to the external computer for further processing.
5. Measurement Results
52
P
O
M
I
A
R
Y
•
A
U
T
O
M
For the tests the capacitor with the nominal capacitance Cn = 1200 F (Un = 2.7 V, ESRn = 300 µΩ) has been used. Values of equivalent parameters has been determined for various currents within the range from 5 A to 20 A. Because the same testing procedure should correspond to the real operational conditions, therefore time (as is during its charging and discharging) required for stabilization of conditions inside the supercapacitor was limited. This time was limited to 1 minute. Values of equivalent parameters have been determined according to the procedure presented on fig. 1, that is during capacitor discharging. Capacitance value has been determined with measurement of voltage drop time from value U1 = 80%·Un = 2.16 V to value U2 = 40%·Un = 1.08 V, for current within the range from 5 A to 20 A. Voltage drop caused by equivalent series resistance ESR, has been determined as a distance between two straight lines, in point corresponding to time of switching on the current source discharging the capacitor. The first line has been determined as an average value from 1500 samples of voltage preceding time of current switch on. The second one, as a regression line, determined from 2500 points of voltage UC, measured during discharging process. Measurements were carried out with 100 Hz sampling frequency (fig. 4). Measurements results are presented in fig. 5. It can be seen that measurement of supercapacitor’s capacitance for higher currents results in achieving of lower capacitance values C and higher values of serial equivalent resistance ESR. A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Ryszard Kopka, Wiesław Tarczyński
6. Conclusions Assessment of technical condition of the supercapacitors, especially carried out “on-line” during their operation, is very problematic. Measurement of equivalent parameters values based on various values of charge or discharge current value generates significantly different values. It can lead to making incorrect decisions corresponding to their real technical condition. Therefore, supervisory systems – operating online – should take into account conditions of the process and decisions should be made correctly taking them into consideration. Temperature is also important factor deciding about value of equivalent parameters. During tests it was maintained on the constant level what ensured repeatability conditions for the measurement but its influence is also important. The authors currently are carrying out further measurement process works within this scope.
Bibliography 1. Chunsheng D., Ning P., High power density supercapacitor electrodes of carbon nanotube films by electrophoretic deposition, “Nanotechnology”, 17/2006, 5314–5318. DOI: 10.1088/0957-4484/17/21/005. 2. Gualous H., Gallay R., Al Sakka M., Oukaour A., Tala-Ighil B., Boudart B., Calendar and cycling ageing of activated carbon supercapacitor for automotive application, “Microelectronics Reliability”, 52/2012, 2477–2481. DOI: 10.1016/j.microrel.2012.06.099. 3. Dougal R. A., Gao L., Liu S., Ultracapacitor model with automatic order selection and capacity scaling for dynamic system simulation, Journal of Power Sources, 126/2004, 250–257, DOI: 10.1016/j.jpowsour.2003.08.031. 4. Gualous H., Gallay R., Alcicek G., Tala-Ighil B., Oukaour A., Boudart B., Makany Ph., Supercapacitor ageing at constant temperature and constant voltage and thermal shock, “Microelectronics Reliability”, 50/2010, 1783–1788. DOI: 10.1016/j.microrel.2010.07.144.
5. Jayalakshmi M., Balasubramanianas K., Simple Capacitors to Supercapacitors – An Overview, “Int. J. Electrochem. Sci.”, 3/2008, 1196–1217. 6. Kötz R., Hahn M., Gallay R., Temperature behavior and impedance fundamentals of supercapacitors, “Journal of Power Sources”, Vol. 154, No. 2/2006, 550–555. DOI: 10.1016/j.jpowsour.2005.10.048. 7. Kopka R., Tarczynski W., (2013) Measurement system for determination of supercapacitors equivalent parameters, “Metrology and Measurement Systems”, Vol. 20, No. 4, 581–590. DOI: 10.2478/mms-2013-0049. 8. Mallika S., Kumar R.S., Review on Ultracapacitor- Battery Interface for Energy Management System, “International Journal of Engineering and Technology”, Vol. 3, No. 1/2011, 37–43. 9. Oukaour A., Tala-Ighil B., Al Sakka M., Gualous H., Gallay R., Boudart B., Calendar ageing and health diagnosis of supercapacitor, “Electric Power Systems Research”, 95/2013, 330–338. DOI: 10.1016/j.epsr.2012.09.005. 10. Pandolfo A.G., Hollenkamp A.F., Carbon properties and their role in supercapacitors, “Journal of Power Sources”, Vol. 157, No. 1/2006, 11–27. DOI: 10.1016/j.jpowsour.2006.02.065. 11. Skruch P., Mitkowski W., Fractional-Orders Models of the Ultracapacitors, W. Mitkowski et al. (Eds.): Advances in the Theory and Applications of Non-Integer Order Systems, Lecture Notes in Electrical Engineering 257, Springer Switzerland, 2013, 281–293, DOI: 10.1007/978-3-319-00939-9–26. 12. Yuege Zhou, Xuerong Ye, Guofu Zhai (2011). Degradation Model and Maintenance Strategy of the Electrolytic Capacitors for Electronics Applications, [in:] Prognostics & System Health Management Conference (PHM2011 Shenzhen), 24–25 May 2011, 1–6. DOI: 10.1109/ PHM.2011.5939474.
Wpływ warunków pracy na parametry niezawodnościowe superkondensatorów Streszczenie: W artykule przedstawiono wyniki badań związanych z pomiarami pojemności i szeregowej rezystancji zastępczej superkondensatorów w zależności od wartości natężenia prądu ładowania i rozładowywania. W tym celu przygotowano specjalny układ pomiarowy oraz algorytm prowadzenia badań tak, aby procedura badań była zbliżona do rzeczywistych warunków eksploatacyjnych. Podczas badań wyznaczono zależność zmian wartości parametrów zastępczych w funkcji wartości prądu, na podstawie których były one szacowane. Do badań użyto superkondensator o pojemności 1200 F. Wartości jego parametrów zastępczych wyznaczono w zakresie zmian natężenia prądu od 5 A do 20 A. Ocena niezawodności została przeprowadzona bezpośrednio na podstawie zmian wartości tych parametrów. Pełna procedura badania została przygotowana w środowisku MATLAB/Simulink z wykorzystaniem przybornika xPC. Słowa kluczowe: superkondensator, zastępcza rezystancja szeregowa, pojemność zastępcza, warunki pracy, prąd ładowania/rozładowania
53
Influence of the Operation Conditions on the Supercapacitors Reliability Parameters
Ryszard Kopka, Ph.D. Eng.
Wiesław Tarczyński, Ph.D. D.Sc. Eng.
He received the M.Sc. and Ph.D. degrees in electrical engineering from the Opole University of Technology in 1995 and 2004, respectively. Currently an assistant professor in the Instytut of Control and Computer Engineering. His research interest concern the possibility of using the information about degradation processes to assess the reliability of technical elements, devices or systems.
He received the M.Sc. and Ph.D. degrees in electronic engineering from the Wrocław University of Technology in 1974 and 1983, respectively. In 2008 he received the D.Sc. degree in electric engineering from Opole University of Technology. Currently the director of the Institute of Control and Computer Engineering. His main scientific interest cover the fault detection methods, especially possibility of using the electronic equipment in diagnosis of power and telecommunication cables. He is the author of over a dozen patents in this field.
r.kopka@po.opole.pl
54
P
O
M
I
w.tarczynski@po.opole.pl
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015, 55–60, DOI: 10.14313/PAR_217/55
Sterowanie przepływem towarów w magazynie z wykorzystaniem predyktora Smitha Ewelina Chołodowicz, Przemysław Orłowski
Zachodniopomorski Uniwersytet Technologiczny w Szczecinie, ul. Sikorskiego 37, 70-313, Szczecin
Streszczenie: W pracy przedstawiono wyniki analizy literaturowej zagadnień związanych ze
sterowaniem przepływem materiałów w systemach magazynowych. Na podstawie zaproponowanego dyskretnego, niestacjonarnego, dynamicznego modelu systemu magazynowego ze zmiennym w czasie opóźnieniem stworzono układ sterowania. Przedstawiona koncepcja usprawnienia przepływu towarów wykorzystuje predyktor Smitha z regulatorem PID. Do doboru optymalnych nastaw parametrów układu regulacji zastosowany został algorytm genetyczny. Wskaźnik jakości skonstruowano na bazie: kosztów tworzenia i utrzymania zapasów oraz utraconych zysków, tj. różnic między zapotrzebowaniem a sprzedażą produktów. Wskaźnik ten odzwierciedla, jak system sterowania zamówieniami nadąża za zmieniającymi się potrzebami rynku. Problem ten jest istotny w przedsiębiorstwach produkcyjnych i handlowych, które dążą do minimalizacji czasu realizacji operacji magazynowych i maksymalizacji przepustowości magazynu przy zapewnieniu ciągłości procesu produkcyjnego i sprzedaży. Sformułowano opis matematyczny systemu sterowania oraz problemu optymalizacji. Dokonano jego implementacji stosując algorytm genetyczny. Przedstawione zostały wyniki badań symulacyjnych ukazujące jakość zaproponowanego układu regulacji w środowisku MATLAB/Simulink. Słowa kluczowe: układ niestacjonarny, matematyczny model magazynu, systemy dyskretne, układ sterowania, predyktor Smitha, regulator PID
1. Wprowadzenie U podstaw rozwoju metod i technik zarządzania produkcją znajduje się potrzeba poprawy jakości oraz głównie rynek charakteryzujący się dużą konkurencyjnością. Wywierana jest presja na przedsiębiorstwa, które poprzez podnoszenie jakości produktów starają się zwiększyć swoją atrakcyjność. Zjawisko występowania przestojów w systemach magazynowych jest związane zarówno z czynnikami losowymi, takimi jak błędy pracowników, wypadki, katastrofy, kradzieże oraz wszelkiego rodzaju zakłócenia, jak i przede wszystkim z poziomem zastosowanej technologii. Jedną z głównych metod pozwalających na zminimalizowanie strat jest dobór odpowiedniej polityki zarządzania zapasami. Współczesny magazyn jest bowiem postrzegany jako miejsce optymalizacji poziomu zapasów, skracania cykli realizacji zamówień, kształtowania poziomu obsługi klienta, a przez to obniżania kosztów logistycznych. Głównym powodem tworzenia zapasów jest konieczność wyrównywania różnych intensywności
Autor korespondujący: Ewelina Chołodowicz, cholodowicz.ewelina@gmail.com Artykuł recenzowany nadesłany 5.07.2015 r., przyjęty do druku 6.08.2015 r. Zezwala się na korzystanie z artykułu na warunkach licencji Creative Commons Uznanie autorstwa 3.0
strumieni przepływów [1]. Priorytetem jest zapewnienie odpowiedniego poziomu obsługi klientów z uwzględnieniem jakości i stosunku do całości zrealizowanych zamówień. W krajach wysoko uprzemysłowionych główny kierunek rozwoju przemysłu to racjonalizacja przepływu materiałów, graniczna minimalizacja zapasów oraz redukcja cykli produkcyjnych [2]. W licznej grupie czołowych japońskich firm proces produkcyjny prowadzony jest przy niemal zerowym stanie zapasów [3]. Znaczna część kosztów logistycznych (przeważnie od 20 % do 30 %) jest generowana przez utrzymywane zapasy [4]. Znalezienie optymalnej wielkości poziomu zapasu, która uwzględnia procesy zakupów (produkcji) i sprzedaży stanowi warunek dla skutecznego i efektywnego zarządzania zapasami [4]. Koordynacja tych procesów w logistycznym łańcuchu dostaw pozwala przedsiębiorstwu osiągnąć sukces na rynku. W sterowaniu zapasami należy również uwzględniać także koszt braku (wyczerpania) zapasu [5]. W koszt ten wchodzą: koszty pośrednie – związane z możliwością przejęcia klientów przez konkurencję (pogorszenie się wizerunku firmy) oraz koszty bezpośrednie – utrata marży handlowej na skutek braku towaru [1]. Trudno jest uzyskać zadowalające efekty związane z układem sterowania w systemach z opóźnieniem, co stanowi fundamentalny problem w wielu procesach regulacji. Z kolei magazyn umożliwia skracanie czasu upływającego między otrzymaniem zamówienia od klienta, a realizacją dostawy [2]. Podejście Rosenblatta i Rolla [6] optymalizuje trzy rodzaje kosztów: koszty związane z początkową inwestycją – budową
55
Sterowanie przepływem towarów w magazynie z wykorzystaniem predyktora Smitha
i konserwacją, koszty niedoboru towarów i przestojów oraz koszty związane z polityką przechowywania proporcjonalne z reguły do zajmowanego miejsca w magazynie. Powyższe przykłady wskazują na to, że rozwiązania zmierzające do minimalizacji kapitału, kosztów, a w efekcie do maksymalizacji zysku są zagadnieniem istotnym i potrzebnym. Pojawia się coraz więcej metod usprawnienia przepływu materiałów w systemie magazynowym, które wykorzystują z kolei coraz to bardziej zaawansowane techniki sterowania [7–10]. W pracy [7] rozważany jest liniowy stacjonarny układ dyskretny ze stałym opóźnieniem do skutecznej kontroli systemów magazynowych z towarami łatwo psującymi się, z wykorzystaniem metod opartych na sterowaniu ślizgowym. W pracy [8] wykorzystano sterowanie liniowo-kwadratowe w celu wyeliminowania zagrożenia tzw. efektu byczego bicza (ang. bullwhip effect). W przypadku obiektów uwarunkowanych niepewnością do sterowania systemami magazynowym sprawdzają się metody sztucznej inteligencji – w pracy [11] zastosowano logikę rozmytą do usprawnienia przepływu materiałów w magazynie. Układy regulacji dla obiektów z opóźnieniem bazujące na koncepcji predyktora Smitha, mają szerokie zastosowanie nie tylko w procesach przemysłowych [12]. Do analizy i modelowania przepływu dóbr w systemie magazynowym można wykorzystać wybrane rezultaty z prac związanych z problematyką powstawania zatorów i blokad komunikacyjnych w sieciach komputerowych o zmiennych w czasie parametrach [13–17]. W niniejszej pracy zaproponowano układ sterowania dla systemu magazynowego polegający na adaptacji predyktora Smitha dla układu niestacjonarnego z ograniczeniami sygnałów oraz z optymalizacją parametrów układu z wykorzystaniem algorytmu genetycznego.
Liczba produktów oczekujących na wysyłkę do magazynu w chwili k, jest zależna od wielkości zamówień u(k) określona następującą zależnością:
Liczba produktów zgromadzonych w magazynie w chwili k, zwana stanem magazynu, będzie zatem dana zależnością:
gdzie: x(k) ≥ 0, u(k) ≥ 0, tp – opóźnienie produkcyjne – związane z czasem potrzebnym na wyprodukowanie bądź skompletowanie zamówienia, ts – opóźnienie spedycyjne – interwał czasu niezbędny na przetransportowanie zamówionych produktów do magazynu bez czasu oczekiwania na transport.
Rys. 1. Schemat blokowy systemu magazynowego ze sterowaniem Fig. 1. Block diagram of inventory system with control
Przy założeniu, że znane są opóźnienia tp, ts oraz funkcja q(k) dla k Î N, powyższy model jest liniowym, niestacjonarnym, dyskretnym modelem układu dynamicznego, dla którego można stosować metody podane m.in. w pracach [19-22] z zastrzeżeniem danych ograniczeń. Schemat blokowy analizowanego systemu został przedstawiony na rys. 1. Układ składa się z trzech głównych bloków: produkcji, transportu i magazynu. Opóźnienie zależne od czasu to(k) związane jest z oczekiwaniem na środek transportu oraz z kumulacją zamówień.
Model matematyczny systemu magazynowego wraz ze szczegółowym opisem został podany w pracy [18]. Poniżej podano najważniejsze informacje. Liczba produktów, które potencjalnie mogą być sprzedane z magazynu jest modelowana jako pewna, nieznana z góry ograniczona funkcja czasu: 0 ≤ d(k) ≤ dmax. Chwilowe wartości d(k) podlegają wahaniom w czasie i zależą od zapotrzebowania na rynku. Zapotrzebowanie na produkty jest w ogólności zmienne w czasie. Liczba produktów wysłanych z magazynu h(k) jest zależna od zapotrzebowania jak i od dostępnych zapasów magazynowych y(k) i spełnione są następujące nierówności:
3. Układ sterowania W klasycznym układzie sterowania, zaprojektowanym bez uwzględniania opóźnienia, jego wprowadzenie może działać destabilizująco lub negatywnie na jakość sterowania. Z tego względu w przypadku znacząco dużych opóźnień wykorzystywane są układy specjalne. Konstrukcja przedstawionego na rys. 2 układu sterowania bazuje na strukturze klasycznego predyktora Smitha. Jest to rodzaj regulatora predykcyjnego, który był opracowany z myślą o systemach sterowania, które charakteryzują się długimi oraz nieuniknionymi opóźnieniami. W jego strukturze zaimplementowano model bez opóźnienia oraz samo opóźnienie, z dwiema pętlami sprzężenia zwrotnego. Bazując na koncepcji sterowania układów z opóźnieniami z wykorzystaniem predyktora Smitha przyjęto, że przybliżony model układu bez opóźnień dany jest w następującej postaci:
0 ≤ h(k) ≤ d(k) ≤ dmax, 0 ≤ y(k) ≤ ymax (1) Jeżeli liczba produktów w magazynie jest wystarczająco duża y(k) ≥ d(k), wówczas w chwili k zachodzi d(k) = h(k). Z punktu widzenia sterowania przepływem towaru istotne jest utrzymanie określonych zapasów w magazynie niezależnie od chwilowych zmian zapotrzebowania klientów, tak aby nie doszło do sytuacji, w której magazyn będzie pusty, bądź liczba przechowywanych produktów będzie nadmierna bądź wręcz przekraczająca pojemność magazynu ymax. W celu uwzględnienia w modelu zmiennego w czasie opóźnienia związanego z kumulacją produktów w oczekiwaniu na transport wprowadzono współczynnik wysyłki produktów do magazynu w chwili k, określony w następujący sposób:
56
O
M
I
A
R
Y
•
A
U
T
O
M
yˆp (k ) = yˆp (k − 1) + u (k − 1) − h (k ) (5)
oraz model opóźnienia zmiennego w czasie w postaci:
(2)
P
y (k ) = y (k − 1) + [1 − q (k − τ s )]x (k − τ s ) − h (k ) (4)
2. Model matematyczny
(3)
(
A
)
xˆ(k ) = q (k − 1) xˆ(k − 1) + yˆp k − τ p + 1 (6)
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Ewelina Chołodowicz, Przemysław Orłowski
yˆ(k ) = [1 − q (k − τ s )] xˆ(k − τ s ). (7)
Model regulatora PID dla błędu sterowania modelu przybliżonego bez opóźnienia e(k) oraz błędu modelu przybliżonego z opóźnieniem y (k ) − yˆ(k ) dany jest w postaci: u (k ) = k1ε (k ) + u I (k ) + k 6 [ε (k ) − ε (k − 1)] + k 3 [y (k ) − yˆ(k )] , (8) gdzie:
u I (k ) = u I (k − 1) + k 4 ε (k − 1)
ε (k ) = y ref (k ) − yˆp (k )
Przyjęto, że wartość referencyjna zapasów magazynowych yref(k) jest funkcją zależną od zapotrzebowania [16] daną w postaci:
Przestoje są sytuacją bardzo niekorzystną – zapotrzebowanie jest wówczas większe niż liczba sprzedanych produktów, gdyż zrealizowane zamówienia nie nadążają za zmieniającym się w czasie zapotrzebowaniem konsumentów. W tym celu tworzony jest zapas rezerwowy (buforowy) gwarantujący, że w kolejnych okresach zawartość magazynu nigdy nie spadnie do zera.
4. Kryterium optymalizacji Zagadnienie optymalizacji układu sterowania wymaga sformułowania wskaźnika jakości procesu, który ma być optymalny. Rozważmy zagadnienie znalezienia optymalnych wartości parametrów ki (i = 1, 2, …, 6) układu dynamicznego przy ustalonej jego strukturze (rys. 2). W przypadku systemu magazynowego wskaźniki można opisać zależnościami:
y ref (k ) = k 2d (k ) + k 5 . (9)
Schemat układu sterowania został przedstawiony na rys. 2. Zmienne od k1 do k6 są parametrami układu regulacji. Nastawy układu sterowania obliczono stosując algorytm genetyczny.
j1 =
N
∑ [d (k ) − h (k )] (10)
k =n 0
j2 =
N
∑ y (k ) (11)
k =n 0
gdzie n0 = tp + ts + to (tp) jest skumulowanym opóźnieniem układu dla u(k = 0), a N jest długością horyzontu czasowego. Zależność (10) reprezentuje utracone możliwości realizacji sprzedaży. Z kolei wyrażenie (11) dotyczy zajętości powierzchni magazynowej. W rozważanym przypadku zastosowano skalaryzację funkcji celu do postaci sumy ważonej:
Rys. 2. Schemat blokowy układu sterowania dla systemu magazynowego Fig. 2. A block diagram of the control system for the inventory system
Ze względu na to, że opóźnienie występuje dla wejścia u(k), a nie występuje dla wejścia d(k), przekształcenie modelu systemu magazynowego z opóźnieniem na połączenie kaskadowe modelu bez opóźnienia i modelu opóźnienia nie może zostać zrealizowane dokładnie tak, jak ma to miejsce w klasycznej strukturze predyktora Smitha dla układów o jednym wejściu i jednym wyjściu. W rozpatrywanym rozwiązaniu zastosowano zmodyfikowaną strukturę układu sterowania dla układów z dużymi opóźnieniami wykorzystującą ideę predyktora Smitha z przybliżonym modelem układu bez opóźnienia dla obiektu o dwóch wejściach i jednym wyjściu, przy czym opóźnienie występuje tylko dla wejścia u(k). Ze względu na przybliżony charakter modelu bez opóźnienia, występujący w zaproponowanej strukturze sygnał yˆ(k ) nie jest dokładnym odzwierciedleniem sygnału y(k) wychodzącego z obiektu regulacji w całym horyzoncie czasowym. Zmodyfikowana struktura układu regulacji ze wzmocnieniem k3, która nie występuje w klasycznym układzie regulacji z predyktorem Smitha, została zaproponowana w efekcie przeprowadzonych badań empirycznych. Na podstawie informacji o zapotrzebowaniu rynku na poszczególne produkty, układ sterowania wyznacza określoną liczbę produktów, które należy zamówić. Głównymi czynnikami doboru sterowania jest minimalizacja kosztów i strat związanych z zajmowaną powierzchnią magazynu oraz przestojami.
j = w 1 j1 + w 2 j 2 (12)
gdzie w1 i w2 to współczynniki wagowe. Dla modelu opisanego zależnościami (1)–(4) oraz układu regulacji opisanego równaniami (5)–(9) i wskaźnika jakości danego w postaci (10)–(12) zadanie optymalizacji można zdefiniować w postaci:
(13)
przy ograniczeniach:
k1 ≥ 0, k 2 ≥ 0, k 3 ≥ 0, k 4 ≥ 0, k 5 ≥ 0, k 6 ≥ 0 (14)
Zaproponowany układ ma na celu określanie optymalnej wielkości dostaw, która zapewnia minimalizację wskaźnika kosztu stanowiącego średnią ważoną łącznych kosztów zapasów, obejmujących koszty tworzenia zapasów i koszty ich utrzymania oraz utraconych korzyści, ograniczając ryzyko przestojów.
5. Badania symulacyjne W przykładzie omówiono wyniki symulacji komputerowej przepływu materiałów w systemie magazynowym ze zmiennym w czasie opóźnieniem oczekiwania na transport. Przyjęto strukturę układu sterowania z rys. 2. Przedmiotem analizy jest wielkość zapasów w magazynie. Na potrzeby badań symulacyjnych układu sterowania dla dyskretnego, niestacjonarnego liniowego modelu z ograniczeniami sygnałów opisanego równaniami (1)– (4), układu regulacji opisanego równaniami (5)–(9) oraz wskaźnika jakości danego w postaci (10)–(12), przyjęto następujące wartości parametrów układu: tp = ts = 14, w1 = 1000, w2 = 1, n0 = 42, N = 1000. Okres próbkowania jest równy 1 dobie. Do rozważań przyjęto zmienne w czasie zapotrzebowanie na rynku
57
Sterowanie przepływem towarów w magazynie z wykorzystaniem predyktora Smitha (rys. 3). Jako funkcję q(k) przyjęto funkcję periodyczną, daną w następującej postaci:
w sposób w przybliżeniu liniowy za zapotrzebowaniem d(k). Wartość referencyjna dla układu przybliżonego yref(k) jest około dwukrotnie wyższa od maksymalnej wartości y(k). Ze względu na różnice między modelem przybliżonym bez opóźnienia a obiektem sterowania, w szczególności zmiennym w czasie opóźnieniem to(k), w układzie występują rozbieżności między poziomami wartości sygnałów y(k) oraz yˆp (k ) . Dla układu przybliżonego bez opóźnienia dostawy są realizowane codziennie, podczas gdy w rozpatrywanym układzie dostawy następują nie częściej niż co 14 dni. Oznacza to, że wielkość zapasów magazynowych y(k) musi pokryć co najmniej 14 kolejnych dni zapotrzebowania rynku d(k). Maksima lokalne (rys. 5) występują w chwili dostarczenia zamówienia do magazynu, zaś wyznaczona przez układ sterowania wielkość zamówień przedstawia rys. 4.
(15)
gdzie funkcja rem jest resztą z dzielenia. Do rozwiązania zadania optymalizacji (16)–(17) zastosowano algorytm genetyczny z następującymi parametrami: liczebność populacji 200, liczba osobników elitarnych 10, udział krzyżowania 0,8. Rozwiązaniem zadania optymalizacji są następujące wartości parametrów:
6. Podsumowanie
oraz odpowiadające im wartości wskaźników kosztu:
W systemach magazynowych opóźnienie związane z czasem przejścia produktów od magazynu do klienta jest często zmienne w funkcji czasu. W środowisku MATLAB/Simulink przeprowadzono badania symulacyjne dla scenariusza zmian, w którym przyjęto, że: −−model dynamiczny jest niestacjonarny ze znacznym opóźnieniem, w układzie występują opóźnienia stałe i zmienne w czasie, −−priorytetem jest minimalizacja przestojów, co odzwierciedla duża wartość wagi we wskaźniku (12), −−układ jest autonomiczny i nie stanowi części łańcucha dostaw, w którym występują centra dystrybucyjne oraz ogniwa pośredniczące, −−zapotrzebowanie klientów jest zmienne w czasie, według przyjętego deterministycznego scenariusza zmian d(k). Pomiar zapotrzebowania nie jest obarczony zakłóceniami o charakterze stochastycznym. Układ sterowania jest układem przyczynowym. Ze względu na nieco inne podejście od prezentowanych w pracach związanych z zarządzaniem łańcuchem dostaw, w szczególności zmienne w czasie znaczne opóźnienia i inny cel układu regulacji, trudno o dokonanie szczegółowego porównania. Jednak zaprezentowaną metodę zarządzania zapasami, można w sposób uproszczony skonfrontować z klasyczną polityką zarządzania zapasami zawartą m.in. w [23], w której zamówienia są umieszczone na początku każdego okresu, tak aby zwiększyć poziom zapasów w górę do predefiniowanych poziomów na podstawie znanych, stałych w czasie opóźnień i zapotrzebowania rynku. Zaproponowane podejście oparte jest na modelu niestacjonarnym, zmiennym w czasie, przykładowym scenariuszu zapotrzebowania klientów oraz dokonywaniu zamówień w ilości i czasie określonym przez układ sterowania. W następnych pracach planowane jest uwzględnienie wpływu przyjętego scenariusza na własności układu sterowania, stochastycznego charakteru zapotrzebowania odbiorców oraz uwzględnienie specyficznych efektów występujących w łańcuchu dostaw, m.in. efektu byczego bicza [23].
j = 1,03·107, j1 = 0,000377·107, j2 = 0,652·107.
Dla przyjętych współczynników wagowych w1 i w2 utrzymywany poziom zapasów w magazynie (rys. 5) umożliwiał pokrycie zapotrzebowania przez okres około 28 dni. Ze względu na wysoką wartość współczynnika w1 = 1000 możliwe jest ograniczenie przestojów kosztem utrzymywania większych zapasów w magazynie. Wartość zapasów magazynowych y(k) nadąża
Rys. 3. Założona funkcja zapotrzebowania rynku na produkty Fig. 3. Presumed function of market demand for products
Rys. 4. Przebieg zamówień dla założonej funkcji zapotrzebowania rynku Fig. 4. The course of orders for the presumed function of market demand
Bibliografia 1. Skowronek C., Sarjusz-Wolski Z., Logistyka w przedsiębiorstwie, Polskie Wydawnictwo Ekonomiczne, Warszawa 2008. 2. Wróblewski K.J., Podstawy sterowania przepływem produkcji [Foundations of production flow control], Wydawnictwa Naukowo-Techniczne, Warszawa 1993. 3. Gola A., Korzan A., Elementy komputerowo wspomaganego procesu sterowania produkcją z wykorzystaniem kart kanban, Informatyczne Systemy Zarządzania, Vol. 2/2011, 39–51. 4. Dermout D., Weiss W., Logistyczne sterowanie zapasami – komputerowe wspomaganie decyzji, Elastyczne łańcuchy dostaw – koncepcje, doświadczenia, wyzwania, materiały kon-
Rys. 5. Stan zapasów magazynowych w funkcji czasu dyskretnego dla założonej funkcji zapotrzebowania rynku Fig. 5. The level of stocks in the discrete time function for the presumed function of market demand
58
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Ewelina Chołodowicz, Przemysław Orłowski
ferencyjne Logistics 2002, Instytut Logistyki i Magazynowania, Poznań 2002. 5. Sarjusz-Wolski Z., Strategia zarządzania zaopatrzeniem: Praktyka logistyki biznesu, Agencja Wydawnicza „Placet”, Warszawa 1998. 6. Rosenblatt M.J., Roll Y., Warehouse capacity in a stochastic environment, International Journal of Production Research, Vol. 26, No. 12/1988, 1847–1851. 7. Ignaciuk P., Bartoszewicz A., Dead-beat and reaching-lawbased sliding-mode control of perishable inventory systems, Bulletin of the Polish Academy of Sciences: Technical Sciences, Vol. 59, No. 1/2011, 39–49. 8. Ignaciuk P., Bartoszewicz A., LQ optimal sliding mode supply policy for periodic review inventory systems, IEEE Transactions on Automatic Control, Vol. 55 No. 1/2010, 269–274. 9. Leśniewski P., Bartoszewicz A., Non-switching reaching law based discrete time quasi-sliding mode control with application to warehouse management problem, World Congress. Vol. 19, No. 1/2014. 10. Ignaciuk P., Bartoszewicz A., Linear-quadratic optimal control of periodic-review perishable inventory systems, IEEE Transactions on Control Systems Technology, Vol. 20, No. 5/2012, 1400–1407. 11. Rudnik K., Franczok K., Usprawnienie przepływu materiałów w magazynie na przykładzie sterowania rozmytego, „Logistyka”, Nr 4/2014. 12. Miall R.C., Weir D.J., Wolpert D.M., Stein J.F., Is the cerebellum a smith predictor? Journal of Motor Behavior, Vol. 25, No. 3/1993, 203–216. 13. Grzyb S., Orłowski P., Congestion control in computer networks - Application of piece-wise affine controller and particle swarm optimization, in 19th Int. Conf. Methods and Models in Automation and Robotics (MMAR), Międzyzdroje, Poland, 2014, 834–838, DOI: 10.1109/MMAR.2014.6957465. 14. Grzyb S., Orłowski P., Model matematyczny kanału komunikacyjnego z zatorem w sieciach o zmiennych w czasie parame-
trach, „Pomiary Automatyka Kontrola”, Vol. 59, Nr 11/2013, 1151–1154. 15. Grzyb S., Orłowski P., Zastosowanie uproszczonych charakterystyk częstotliwościowych do analizy kanału komunikacyjnego o zmiennych w czasie parametrach, „Pomiary Automatyka Kontrola”, Vol. 60, Nr 5/2014, 317–320. 16. Grzyb S., Orłowski P., Congestion feedback control for computer networks with bandwidth estimation, Proc. 20th Int. Conf. on Methods and Models in Automation and Robotics (MMAR), Miedzyzdroje, Poland, 2015. 17. Ignaciuk P., Bartoszewicz A., Discrete-time sliding-mode congestion control in multisource communication networks with time-varying delay, IEEE Trans. on Control Systems Technology 19, 2010. 18. Chołodowicz E., Orłowski P., Dynamiczny dyskretny model systemu magazynowego ze zmiennym w czasie opóźnieniem, „Logistyka”, Nr 4/2015, 31–35. 19. Orłowski P., Convergence of the Discrete-Time Nonlinear Model Predictive Control with Successive Time-Varying Linearization along Predicted Trajectories, Electronics and Electrical Engineering, Vol. 113, No. 7/2011, 27–31. 20. Bartoszewicz, A., Nowacka-Leverton A., Time-varying sliding modes for second and third order systems, Vol. 382, Springer, 2009. 21. Orłowski P., Complexity analysis of the piece-wise affine approximation for the car on the nonlinear hill model related to discrete–time, minimum time control problem, Electronics and Electrical Engineering, Vol. 20, No. 10/2014, 3–6. 22. Orłowski P., Generalized feedback stability for periodic linear time–varying, discrete-time systems, Bulletin of the Polish Academy of Sciences: Technical Sciences – Polish Academy of Sciences, Vol. 60, No. 1/2012, 171–178. 23. Luong H.T., Measure of bullwhip effect in supply chains with autoregressive demand process, European Journal of Operational Research, Vol. 180, No. 3/2007, 1086–1097.
Inventory goods flow control system using Smith predictor Abstract: There are a number of theorems and techniques that view inventory management from
variant perspectives. The recent progress in research has resulted in innovative and more general techniques that can reduce the supply chain costs fundamentally. Modern inventory control is anchored in vastly advanced and complex models, which require considerable computational efforts. In this paper, we use a mathematical model of a warehouse system with time-varying delivery delay and adapt control system in order to apply it to the problem of goods flow in inventory systems. On the basis of the analysis of the inventory system, we propose a control system, then made its initial verification in the way of computer simulation in MATLAB/Simulink. The concept of improving the flow of materials is based on the structure of the Smith predictor and the PID controller. We perform optimization studies using genetic algorithm. Two quality indicators are subjected to minimization: the total costs of creating and maintaining inventories and differences between the demand and sales of products – the value of providing on whether the storage system keep up with the changing needs of the market (avoid stoppages). In this article, we mainly want to show that our idea of control system is able to achieve a high service level with maintaining a given inventory capacity to avoid redundancy. Keywords: inventory control, inventory system, variable delay, discrete-time systems, Smith predictor, control systems, PID controller
59
Sterowanie przepływem towarów w magazynie z wykorzystaniem predyktora Smitha
Ewelina Chołodowicz
dr hab. inż. Przemysław Orłowski, prof. ZUT
Studentka na Wydziale Elektrycznym, Zachodniopomorskiego Uniwersytetu Technologicznego w Szczecinie. Laureatka projektu „Zachodniopomorskie Talenty – Regionalny System Stypendialny” w latach 2011/2012. Aktualne zainteresowania naukowe dotyczą wybranych zagadnień modelowania, symulacji i sterowania układów dynamicznych.
Profesor nadzwyczajny w Katedrze Sterownia i Pomiarów Zachodniopomorskiego Uniwersytetu Technologicznego w Szczecinie. Główne kierunki badań naukowych to analiza i synteza układów sterowania, w szczególności układy dyskretne, układy niestacjonarne, układy nieliniowe i układy niepewne.
cholodowicz.ewelina@gmail.com
60
P
O
przemyslaw.orlowski@zut.edu.pl
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015, 61–66, DOI: 10.14313/PAR_217/61
Modularne środowisko do rywalizacji robotów sportowych śledzących linię Maciej Węgierek, Bartosz Świstak, Tomasz Winiarski
Politechnika Warszawska, Wydział Elektroniki i Technik Informacyjnych, ul. Nowowiejska 15/19, 00-665 Warszawa
Streszczenie: Rozmaitość zawodów robotów organizowanych na całym świecie wskazuje na
to, że bez wahania możemy już mówić o robotyce sportowej – nie tylko jako dziedzinie rozrywki, ale także badań. W ostatnich latach wykreowano kilka popularnych konkurencji, dla których sformułowano wymagania dotyczące konstrukcji i oprogramowania robotów. Standaryzacja wymagań obiektywizuje wynik rywalizacji, podobnie jak ma to miejsce chociażby w wyścigach Formuły 1. Jednym z problemów standaryzacji było ujednolicenie środowiska, w którym konkurują roboty sportowe śledzące linię na czas. W artykule opisujemy działania, które doprowadziły do opracowania, wytworzenia i weryfikacji modularnego środowiska do rywalizacji robotów typu Line Follower. Słowa kluczowe: modularna plansza, zawody robotów, standaryzacja środowiska, roboty śledzące linię
1. Wstęp Zawody robotów są wydarzeniem, podczas którego zbudowane i zaprogramowane przez zawodników roboty muszą wykonać zadanie konkursowe, rywalizując ze sobą. Konkretny cel działań robota określany jest przez daną konkurencję turniejową. Roboty najczęściej oceniane są pod kątem dokładności i szybkości wykonywania zadań. Niektóre dyscypliny zakładają też walkę par, w której roboty konkurują o dominację w bezpośrednim starciu. Na świecie organizowanych jest bardzo wiele zawodów robotów. Niektóre stawiają wyzwania na granicy możliwości technicznych robotów i mają elitarny charakter. Historycznie zaliczyć do nich można zawody samochodów autonomicznych DARPA Grand Challenge [3, 13] i DARPA Urban Challenge [4, 7], a współcześnie DARPA Robotics Challenge z finałami w 2015 r. Do skomplikowanych i w swojej zasadniczej formie wymagających zaangażowania całych zespołów należą rozgrywki robotów grających w piłkę nożną RoboCup [1, 2, 6], organizowane przez The RoboCup Federation. W niniejszej pracy skoncentrujemy się na rywalizacji robotów w kategoriach indywidualnych, których konstrukcja i oprogramowanie leży w zasięgu możliwości zdolnych studentów. Największymi zawodami robotycznymi na świecie są RoboGames [5, 11] (rys. 1), organizowane w San Mateo w Kalifornii. W ramach zawodów rozgrywane są konkurencje takie jak: Combat, Sumo, Line Follower, Maze/MicroMouse, zawody humanoidów (wyścigi, walki, zadania), Robot Soccer, Art Bots
Autor korespondujący: Maciej Węgierek, wegierek.maciej@gmail.com Artykuł recenzowany nadesłany 10.07.2015 r., przyjęty do druku 17.08.2015 r. Zezwala się na korzystanie z artykułu na warunkach licencji Creative Commons Uznanie autorstwa 3.0
Rys. 1. RoboGames 2008 – konkurencja sumo (robogames.net) Fig. 1. RoboGames 2008 – sumo competition (robogames.net)
i zawody pojazdów autonomicznych. Nie mniej ważną imprezą są mistrzostwa Europy autonomicznych robotów mobilnych – RobotChallenge [12] – organizowane w Wiedniu od 2004 r. Podczas tego wydarzenia można obserwować roboty z wielu kategorii związanych z Sumo (lego, nano, micro, mini, mega, humanoid), Line Follower, Humanoid Sprint i Freestyle. Większość robotów występujących w zawodach jest autonomiczna, a w niektórych konkurencjach (np. Robot Combat) roboty są sterowane zdalnie. Ich budowa zależy od konkurencji, w której biorą udział. Roboty walczące charakteryzują się mocną i zwartą budową, zaś jednostki wyścigowe zbudowane są z lekkich materiałów, dzięki którym zachowują małą masę, a jednocześnie osiągają podobną moc jak roboty sumo. Z powodu względnej prostoty konstrukcji robotów i organizacji zawodów na pierwszy plan pod względem popularności wysuwają się trzy konkurencje robotów sportowych: sumo, micromouse i line followers. Dla dwóch pierwszych wypracowano już standardy dotyczące parametrów robotów i plansz, co pozwala na możliwie obiektywne wyłonienie zwy-
61
Modularne środowisko do rywalizacji robotów sportowych śledzących linię cięzców rozgrywek oraz, co nie mniej ważne, przygotowanie się do nich. Specyfikacja plansz i wymagania dotyczące robotów są publikowane przez organizatorów zawodów w regulaminach danych konkurencji. W konkurencji sumo typowo rozróżnia się kategorie robotów przedstawione w tabeli 1. Z kolei dla konkurencji Micromouse określane są parametry: −−plansze: 16 × 16 komórek, −−wielkość komórki: 18 cm × 18 cm, −−wysokość ścian: 5 cm. W artykule opisujemy działania, które doprowadziły do opracowania, wytworzenia i weryfikacji modularnego środowiska do rywalizacji robotów sportowych śledzących linię na czas. W sekcji 2 scharakteryzowano zawody takich robotów organizowane w Polsce i na świecie. W sekcji 3 przedstawiono propozycję ustandaryzowanego dla nich środowiska w postaci modularnych plansz. Środowisko to podlegało weryfikacji (sekcja 4). Całość kończy podsumowanie (sekcja 5).
Rys. 2. RobotChallenge 2015 – Line Follower (Christoph Welkovits, www.robotchallenge.org) Fig. 2. RobotChallenge 2015 - Line Follower (Christoph Welkovits, www.robotchallenge.org)
Tabela 1. Kategorie robotów sumo Table 1. Categories of sumo robots
Klasa
Wymiary robota
Masa robota
Średnica planszy
Obwódka planszy
Mega
20 cm × 20 cm
3 kg
154 cm
5 cm
Mini/Lego
10 cm × 10 cm
500 g
77 cm
2,5 cm
Micro
5 cm × 5 cm
100 g
38,5 cm
1,25 cm
Nano
2,5 cm × 2,5 cm
25 g
19,25 cm
0,625 cm
Humanoid
50 cm × 20 cm
3 kg
154 cm
5 cm
Lego Sumo
15 cm × 15 cm
1 kg
154 cm
5 cm
2. Zawody robotów śledzących linię W konkurencji „Follow the Line” głównym zadaniem robotów jest przejechanie trasy po wyznaczonej linii w jak najkrótszym czasie. Jest to jedna z najpopularniejszych dyscyplin i występuje praktycznie na każdych zawodach robotów sportowych (tab. 2), w tym na RobotChallenge (rys. 2). Najprostszą planszą w konkurencji FTL jest tor wyklejony z taśmy na płaskiej powierzchni (rys. 3). Jest to rozwiązanie tanie, ale nie pozwala na stworzenie dwóch takich samych torów, a ponadto wykazuje dużą podatność na uszkodzenia mechaniczne, np. w wyniku przerwania lub odklejenia taśmy. W takiej sytuacji naprawa powoduje zmianę toru i układu planszy. Konkurencję FTL można podzielić na kategorie: −−Line Follower (klasyczne),
Tabela 2. Przegląd wybranych zawodów robotów z konkurencja FTL w 2014 r. Table 2. Overview of selected tournaments with FTL competition in 2014 year
Nazwa zawodów
Miejsce
Termin
Warszawa
8 marca 2014 r.
Wiedeń
29–30 marca 2014 r.
Robotic Tournament 2014
Rybnik
12 kwietnia 2014 r.
Trójmiejski Turniej Robotów 2014
Gdańsk
24 maja 2014 r.
Robomaticon 2014 RobotChallenge 2014
Robotic Day 2014
Praga
21–22 czerwca 2014 r.
Bukareszt
1–2 listopada 2014 r.
Łódź
15 listopada 2014 r.
Bionikalia 2014
Warszawa
6 grudnia 2014 r.
Robotic Arena 2014
Wrocław
6 grudnia 2014 r.
Robochallenge 2014 Sumo Challenge 2014
Rys. 3. Przykładowa improwizowana plansza na zawody FTL Fig. 3. Sample board during FTL competition
62
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Maciej Węgierek, Bartosz Świstak, Tomasz Winiarski −−Line Follower Enhanced (utrudnienia), −−Line Follower Turbo (turbiny), −−Lego FTL (Mindstorms). Każda kategoria różni się zasadami tworzenia planszy lub konstrukcjami robotów dopuszczonych do zawodów. Klasyczny Line Follower odbywa się na torze składającym się z odcinków prostych i łuków. W wersji rozszerzonej (Enhanced) mogą pojawić się chwilowe przerwania trasy, skrzyżowania, wzniesienia oraz przeszkody na drodze, które trzeba omijać, a potem wrócić na trasę. Kategoria Line Follower Turbo dopuszcza roboty z napędem tunelowym. Jego zadaniem jest wytworzenie dodatkowej siły dociskającej robota do podłoża i pozwalającej na utrzymanie się na trasie przy dużych prędkościach. W kategorii Lego FTL jedynym elementem konstrukcyjnym robota są klocki Lego i zestawy Mindstorms. Unormowane części i oprogramowanie pozwala na uczestnictwo mniej doświadczonych zawodników, dopiero stawiających pierwsze kroki w tej dziedzinie. Regulaminy dotyczące tej konkurencji robotyki turniejowej nakładają ograniczenia na wielkość robotów, nie stanowią jednak standów dla środowiska ich rywalizacji.
3. Budowa przykładowego robota Line Follower Typowy robot śledzący linię składa się z prostej platformy mobilnej, układu wykrywającego linię oraz modułu elektronicznego. Najbardziej popularnym rozwiązaniem bazy jezdnej jest układ dwóch współosiowych kół (rys. 4 (1)) wraz z trzecim kołem wleczonym lub elementem ślizgającym sie po podłożu (rys. 4 (2)). Jest to układ nieholonomiczny o dwóch stopniach swobody. Najważniejszym elementem robota jest układ wykrywający linię. Bazuje on na zestawie odbiciowych czujników światła (rys. 3 (3)). Uczestnicy mogą wyposażać robota w pojedynczy czujnik lub ich zestaw, zależnie od regulaminu zawodów. Sensory te umieszcza się w sposób nieruchomy w stosunku do bazy robota lub na ruchomym ramieniu o jednym stopniu swobody. W zależności od liczby czujników robot wyszukuje linię w różny sposób. Najpopularniejsze algorytmy wykorzystywane do wyznaczania trajektorii robota bazują na regulatorach PID.
Rys. 4. Model robota LineFollower zbudowanego z zestawu Lego Mindstorm (Lego Digital Designer dd.lego.com) Fig. 4. LineFollower robot model constructed with Lego Mindstorm parts (Lego Digital Designer dd.lego.com)
−−budowanie różnych tras w krótkim czasie, −−zapamiętanie ułożonej trasy i zbudowanie takiej samej po upływie czasu, −−zbudowanie dwóch identycznych tras do przeprowadzania wyścigów równoległych, −−stworzenie unormowanego środowiska do badań. W obliczu typowych wymiarów robotów i przebiegu tras za cel postawiliśmy sobie skonstruowanie planszy składającej się z kwadratowych elementów o wymiarach 20 cm × 20 cm. Każdy z elementów powinien mieć nadruk w postaci linii prostej, łuku lub skrzyżowania. Połączone elementy tworzyłyby gotową trasę. Zaletą takiego rozwiązania miała być ich trwałość, odporność
4. Modularne środowisko dla robotów śledzących linię Jednym z czynników wpływających na sukces robota w zawodach jest środowisko, w jakim jest testowany. Plansza pozwalająca na profesjonalną weryfikację algorytmów sterowania powinna umożliwiać:
Rys. 5. Opracowane wzory kafli, adekwatne do typowych tras z ciągłą linią Fig. 5. Elements patterns adequate for typical continuous line paths
Rys. 6. Kafle w pudłach i fragment planszy w trakcie układania Fig. 5. Elements in boxes and the board during composition
63
Modularne środowisko do rywalizacji robotów sportowych śledzących linię
Rys. 7. Przykładowe plansze ułożone z kafli Fig. 7. Sample boards composed of elements
przez co po ich złączeniu powstawały uskoki utrudniające robotowi przejazd. Kolejne próby obejmowały wykorzystanie różnego rodzaju tworzyw sztucznych [10], które ocenialiśmy pod kątem sztywności, podatności na trwałe odkształcenia, wytrzymałości na uszkodzenia mechaniczne, możliwości dokładnego cięcia maszynami cyfrowymi oraz dostępnych technik malowania. Jednym z rozważanych materiałów był polichlorek winylu. Testowe kafle, wycięte za pomocą lasera, okazały się być idealnie płaskie i lekkie. Na każdym z nich wyznaczyliśmy kształt trasy za pomocą samoprzylepnej folii wyciętej również laserem. Matowa struktura otrzymanych wzorów nie odbijała światła, dzięki czemu znakomicie sprawdzała się podczas próby przejazdu robota FTL, który do wykrycia czarnej linii korzysta z fotoelektrycznego czujnika odbiciowego. Wadą tak wytworzonych elementów była bardzo niska odporność na uszkodzenia mechaniczne oraz odklejanie się folii przy krawędziach kafli. Polichlorek winylu jest tworzywem kruchym i może pękać w wyniku upadku z wysokości jednego metra na twarde podłoże. W wyniku wielu prób zdecydowaliśmy się na wykonanie toru z płyty poliwęglanowej [9], która została pocięta przez maszynę cyfrową typu waterjet. Na każdym z kafli został naniesiony nadruk przy użyciu technologii utrwalania farby promieniem ultrafioletowym. Gotowa plansza składa się z 48 elementów o wymiarach 20 cm × 20 cm i tworzy spójną całość dzięki obramowaniu wykonanemu z płaskowników aluminiowych. W naszym laboratorium robotyki mamy do dyspozycji dwa identyczne tory. Duża liczba nadmiarowych elementów pozwala na tworzenie bardzo zróżnicowanych tras o różnym poziome trudności. Wzory kafli, którymi dysponujemy, przedstawione są na rys. 4.
Rys. 8. Plansza podczas eliminacji Fig. 8. A board during the qualification phase
5. Weryfikacja Gotowe plansze (rys. 6 i 7) były stosowane podczas organizacji ogólnopolskich zawodów robotów Bionikalia 2014 oraz zajęć laboratoryjnych na Wydziale Elektroniki i Technik Informacyjnych Politechniki Warszawskiej. Użycie materiału, jakim jest poliwęglan, umożliwiło wykonanie niemal idealnie płaskiego podłoża. Konstrukcja niestety nie jest pozbawiona wad. Dopracowania wymaga technologia nadrukowywania wzorów, która w przypadku omawianej planszy okazała się nie być w pełni odporna na zarysowania. Podczas zawodów Bionikalia 2014 wykorzystano różne konfiguracje tras o różnym stopniu trudności w zależności od etapu konkursu (eliminacje (rys. 8), finał (rys. 9)). Plansza finałowa została ułożona we współpracy z uczestnikami zawodów, a poziom jej skomplikowania pozwolił na pokonanie całej trasy jedynie dwóm robotom. W celu wyłonienia trzeciego miejsca na podium została prze-
Rys. 9. Plansza podczas finałów Fig. 9. A board during the final phase
na uszkodzenia oraz dokładność wykonania. Ponadto za bardzo ważną cechę środowiska uznaliśmy minimalną wysokość uskoków między złączonymi kaflami. Gotowa trasa miała stanowić spójną całość w postaci gładkiego toru przystosowanego niemal dla każdej konstrukcji robotów Line Follower. Podstawowym problemem konstrukcyjnym okazał się dobór materiału, z którego miały być wykonane kafle. Pierwszą próbą było wycinanie elementów z blachy. Tak wykonane kafle były odporne na uszkodzenia, ale nie były idealnie płaskie,
64
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Maciej Węgierek, Bartosz Świstak, Tomasz Winiarski
Tabela 3. Wyniki eliminacji konkurencji Lego Line Follower Table 3. Qualification phase results – Lego Line Follower
Miejsce
Robot
Czas (s)
1.
Jeździec Apokalipsy
10,07
2.
Protodragon
11,18
3.
Śledź
11,49
4.
Jednoręki T-Rex
12,04
5.
Berpin
12,52
6.
Beton
13,21
7.
Kret
13,56
8.
ROBOBOT
14,41
9.
Cleaner
16,42
10.
Za_lornete
18,09
11.
Monia
18,26
12.
Kwant
22,25
13.
Dziadek
23,23
14.
VERSAL
25,12
15.
Follower
26,15
16.
Chopper
30,41
17.
Linek
33,08
18.
Pisz_Bartek
35,38
19.
Linio Wąchacz
36,63
20.
asdf
39,05
Tabela 4. Wyniki fazy finałowej konkurencji Lego Line Follower Table 4. Final phase results – Lego Line Follower
Miejsce
Robot
Czas (s)
1.
Jednoręki T-Rex
13,59
2.
Beton
25,01
–
Kret
–
–
Jeździec Apokalipsy
–
–
ROBOBOT
–
–
Śledź
–
–
Berpin
–
–
Protodragon
–
Tabela 5. Dogrywka konkurencji Lego Line Follower Table 5. Overtime phase results – Lego Line Follower
Miejsce
Robot
Czas (s)
3.
Berpin
16,48
4.
ROBOBOT
20,15
–
Kret
–
–
Jeździec Apokalipsy
–
–
Śledź
–
–
Protodragon
–
prowadzona dogrywka, podczas której ponownie jedynie dwa roboty pokonały całą trasę. Wyniki poszczególnych etapów zostały przedstawione w tabelach 3, 4 i 5. Możliwości gotowej planszy przedstawiliśmy na filmie: https://www.youtube.com/watch?v=922RQBibau4.
5. Podsumowanie Przegląd zawodów robotów śledzących linię skłonił nas do podjęcia prac nad stworzeniem uniwersalnego i łatwego w rekonfiguracji środowiska ich rywalizacji. Opracowano modularne plansze, które sprawdziły się już jako element zawodów Bionikalia 2014, a także jako baza do prowadzenia zajęć dydaktycznych na Wydziale Elektroniki i Technik Informacyjnych Politechniki Warszawskiej. Sukces opracowanego rozwiązania skłania do zaproponowania rozgrywek pucharowych w ramach polskiej serii zawodów w omawianej konkurencji. Ustandaryzowana wersja tras pozwala w szczególności na prowadzenie badań nad algorytmami sterowania robotów, które znajdą zastosowanie podczas wyścigów na trasach budowanych według tych samych, znanych kryteriów.
Podziękowania
Pragniemy podziękować wszystkim osobom z Koła Naukowego Robotyki „Bionik”, bez zaangażowania których organizacja zawodów Bionikalia 2014 nie byłaby możliwa. Podziękowania należą się też Rektorowi Politechniki Warszawskiej, Dziekanowi Wydziału Elektroniki i Technik Informacyjnych, Dyrektorowi Instytutu Automatyki i Informatyki Stosowanej, Kołom Naukowym KNTG Polygon, KNEST i KNR, a także sponsorom, którzy istotnie wsparli projekt finansowo i organizacyjnie.
Bibliografia 1. Sven Behnke, Manuela Veloso, Arnoud Visser, Rong Xiong. RoboCup 2013: Robot Soccer World Cup XVIII. Springer, 2014. 2. Reinaldo A. C. Bianchi, H. Levent Akin, Subramanian Ramamoorthy, Komei Sugiura. RoboCup 2014: Robot Soccer World Cup XVII. Springer, 2015. 3. Martin Buehler, Karl Iagnemma, Sanjiv Singh. The 2005 DARPA Grand Challenge: The Great Robot Race. Springer, 2007. 4. Martin Buehler, Karl Iagnemma, Sanjiv Singh. The DARPA Urban Challenge: Autonomous Vehicles in City c Traffi . Springer, 2009. 5. Calkins D., An Overview of RoboGames. IEEE Robotics & Automation Magazine, March 2011, DOI: 10.1109/ MRA.2010.940146. 6. Xiaoping Chen, Peter Stone, Luis Enrique Sucar, Tijn van der Zant. RoboCup 2012: Robot Soccer World Cup XVI. Springer, 2013. 7. Effertz J., Sensor Architecture and Data Fusion for Robotic Perception in Urban Environments at the 2007 DARPA Urban Challenge, [w:] Sommer G., Klette R. (red.), Robot Vision, Springer, 2008. 8. Kopacek P., Automation in Sports and Entertainment, [w:] Shimon Y. Nof (red.), Springer Handbook of Automation. Springer, 2009. 9. Praca zbiorowa, Poliwęglany. WNT, 1971. 10. Rabek Jan F., Polimery: Otrzymywanie, metody badawcze, zastosowanie. Wydawnictwo Naukowe PWN, 2013.
65
Modularne środowisko do rywalizacji robotów sportowych śledzących linię
13. Thrun S., Winning the DARPA Grand Challenge, [w:] Fürnkranz J., Scheffer T., Spiliopoulou M. (red.), Machine Learning: ECML 2006. Springer, 2006.
11. [http://robogames.net/] – strona organizatorów zawodów RoboGames. 12. [http://www.robotchallenge.org/] – strona organizatorów zawodów RobotChallenge.
Modularized environment for Line Follower robots Abstract: The number of worldwide robotic competitions led to the conclusion that sport
robotics became an important area of both entertainment and research. The competitions evolve to standardize assumptions for hardware and software of participating robots. This makes the tournament results impartial analogically to Formula 1 car racings. In sport robotics the standardization of competition environment still remains the problem for Line Follower robots. In the article we present research on the specification, development and verification of modularized boards for these robots. Keywords: modularized environment, robotic competitions, Line Follower, modularized board
Maciej Węgierek
inż. Bartosz Świstak
Jest studentem Wydziału Elektroniki i Technik Informacyjnych Politechniki Warszawskiej oraz prezesem Koła Naukowego Robotyki „Bionik”. W 2014 r. pełnił funkcję koordynatora zawodów robotów sportowych Bionikalia 2014 w ramach Grantu Rektora Politechniki Warszawskiej. Jego główne zainteresowania naukowe obejmują robotykę manipulacyjną i techniki rozpoznawania obrazów.
Jest studentem Wydziału Elektroniki i Technik Informacyjnych Politechniki Warszawskiej oraz wiceprezesem Koła Naukowego Robotyki „Bionik”. W latach 2013–2014 współorganizował zawody robotów sportowych Bionikalia oraz brał udział w dwóch Grantach Rektora Politechniki Warszawskiej. Prowadził tez prace badawcze w ramach Grantu Dziekana Wydziału Elektroniki i Technik Informacyjnych Politechniki Warszawskiej, a także w projekcie RobREx, finansowanym przez Narodowe Centrum Badan i Rozwoju.
wegierek.maciej@gmail.com
bartswis@gmail.com
dr inż. Tomasz Winiarski tmwiniarski@gmail.com
Jest adiunktem w Instytucie Automatyki i Informatyki Stosowanej Politechniki Warszawskiej. Sprawuje funkcję kierownika laboratorium robotyki w macierzystym instytucie, a także opiekuna studenckiego Koła Naukowego Robotyki „Bionik”, które współtworzył i z którym organizował imprezy popularyzujące robotykę oraz realizował granty badawcze. W 2010 r. otrzymał za osiągnięcia naukowe nagrodę indywidualną drugiego stopnia Rektora Politechniki Warszawskiej, w 2011 r. wyróżnienie w konkursie „Innowator Mazowsza”, a także pierwszą nagrodę w konkursie „Młodzi Innowacyjni” PIAP. Jego zainteresowania naukowe dotyczą z jednej strony konstrukcji i nawigacji robotów mobilnych dedykowanych do zadań usługowych, z drugiej strony specyfikacji i implementacji zadań manipulatorów i chwytaków ze szczególnym uwzględnieniem hybrydowego sterowania pozycyjno-siłowego oraz sterowania impedancyjnego. W swoich pracach kierował grantami rektorskimi, dziekańskimi, a także finansowanymi przez Narodowe Centrum Nauki.
66
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015, 67–82, DOI: 10.14313/PAR_217/67
Rozwiązania programowe w sterowaniu zaawansowanymi aplikacjami wizyjnymi Jacek Dunaj
Przemysłowy Instytut Automatyki i Pomiarów PIAP, Al. Jerozolimskie 202, 02-486 Warszawa
Streszczenie: W artykule zawarto informacje o rozwiązaniach softwarowych zastosowanych
w sterowaniu zaawansowanymi aplikacjami wizyjnymi dla przemysłu samochodowego, jakie zrealizowano w Przemysłowym Instytucie Automatyki i Pomiarów PIAP w Warszawie. Opisano kryteria wyboru oprogramowania wizyjnego, wymagany format obsługiwany przez programy wizyjne, sposób uruchamiania ich w trybie pracy automatycznej oraz definiowania sposobu interpretacji ich wyników i formatowania raportu końcowego. Przedstawiono dwie metody indywidualnego konfigurowania kontroli wizyjnych złożonych wyrobów, w zależności od zastosowanego układu sterowania. Omówiono opis współpracy aplikacji sterującej wykonywaniem kontroli wizyjnych a robotem przemysłowym zastosowanym do przemieszczania kamery w jednej z przedstawionych aplikacji. Słowa kluczowe: kontrola wizyjna, NeuroCheck, sterownik PLC, aplikacja komputera PC, robot przemysłowy, baza danych, sterownik ODBC
1. Wprowadzenie
2. Wybór oprogramowania wizyjnego
Systemy wizyjne na masową skalę w przemyśle zaczęto wprowadzać pod koniec XX w. wraz ze wzrostem mocy obliczeniowych procesorów. Jednym z obszarów ich zastosowania jest kontrola wyrobów po montażu końcowym. Obejmuje ona sprawdzenie obecności wybranych elementów, w tym ich położenia względem siebie, ocenę wymiarów (polegającą na wykonaniu pomiarów wizyjnych i sprawdzeniu, czy mieszczą się w granicach tolerancji), ocenę kształtu, stanu powierzchni, identyfikację napisów i porównanie ich z wzorcami, etc. Przemysłowy Instytut Automatyki i Pomiarów PIAP był jednym z pierwszych integratorów automatyki w Polsce, który wprowadził do swojej oferty aplikacje przemysłowe wyposażone w systemy wizyjne. Potrzeby potencjalnych klientów dotyczyły najczęściej kontroli złożonych wyrobów końcowych. Taka kontrola miała obejmować szereg elementów montowanych na podobnych wyrobach. Mogły się one różnić od siebie skompletowaniem, miejscem montażu poszczególnych części, a także specyficznymi cechami, jak napisy umieszczane na ich korpusach i tabliczkach znamionowych. Jednym z powtarzających się wymagań było zapewnienie, że aplikacja wizyjna po niewielkich modyfikacjach będzie mogła sprawdzać wyroby, które dopiero w przyszłości będą wprowadzone do produkcji.
Bez względu na platformę sprzętową aplikacje wizyjne są zazwyczaj tworzone na komputerze PC za pomocą odpowiedniego oprogramowania. W przypadku kamer inteligentnych aplikacja jest wykonywana przez procesor kamery. Wówczas oprogramowanie komputera PC do tworzenia aplikacji wizyjnej zapewnia także pełną obsługę kamery – uruchamianie, zatrzymywanie i debugowanie programu, podgląd stanu wejść i sterowanie wyjściami kamery, ustawianie zmiennych systemowych (np. nastawy zegara i kalendarza w kamerze), adresację i parametryzację portów transmisyjnych, etc. W zależności od wyposażenia kamery, czynności te są wykonywane za pośrednictwem standardowych interfejsów komunikacyjnych RS-232, Ethernet, USB, IEEE 1394. Innym rozwiązaniem jest realizacja aplikacji przez komputer PC pod kontrolą oprogramowania wizyjnego. W takim przypadku komputer PC musi być wyposażony w karty akwizycji obrazu do obsługi kamer lub kamery są sprzężone z komputerem za pomocą standardowego interfejsu zapewniającego transmisję obrazów w czasie rzeczywistym. Oba rozwiązania mają swoje wady i zalety. Drugi wariant jest bardziej uniwersalny ze względu na dodatkowe możliwości sterowania innymi urządzeniami automatyki i wykorzystaniem oprogramowania biurowego (bazy danych, arkusze kalkulacyjne) i był częściej wybierany do złożonych zastosowań komercyjnych. Podstawowym działaniem programów kontroli wizyjnej jest analiza obrazu obiektu. Obraz może być ładowany do pamięci komputera bezpośrednio z kamery, ale jego źródłem może być także bitmapa odczytana z pliku .bmp. W pierwszym przypadku oprogramowanie wizyjne musi współdziałać z kartą akwizycji obrazu lub znać format danych wymienianych z kamerą za pomocą standardowego intrerfejsu. Z kolei możliwość wykorzystania obrazu odczytanego z pliku .bmp jest cenną cechą pozwalającą na szybsze tworzenie i modyfikowanie programu
Autor korespondujący: Jacek Dunaj, jdunaj@piap.pl Artykuł recenzowany nadesłany 28.04.2015 r., przyjęty do druku 10.08.2015 r. Zezwala się na korzystanie z artykułu na warunkach licencji Creative Commons Uznanie autorstwa 3.0
67
Rozwiązania programowe w sterowaniu zaawansowanymi aplikacjami wizyjnymi bez fizycznej obecności kamery. Bardzo istotne jest także, w jaki sposób można sterować oprogramowaniem wizyjnym realizującym aplikacje. Oprogramowanie wizyjne musi zapewnić możliwość automatycznego uruchamiania różnych programów aplikacyjnych bez bezpośredniego udziału operatora. Znane są firmy, które specjalizują się w opracowywaniu uniwersalnego oprogramowania, mają doświadczenie i oferują swoje sprawdzone produkty na rynku komercyjnym. Zadaniem inżynierów PIAP jest efektywne wykorzystanie funkcji wybranego oprogramowania, opracowanie schematu końcowej aplikacji możliwej do zastosowania w różnych stanowiskach kontroli wizyjnej.
Wśród dostępnych okien dialogowych oprogramowania NeuroCheck są okna opisane jako Remote control (rys. 1). Pozwalają one określić, w jaki sposób NeuroCheck będzie sterowany w trybie pracy automatycznej, a także w jaki sposób program ten będzie przekazywał wyniki aplikacji wizyjnych. Sterowanie programem NeuroCheck w trybie pracy automatycznej można realizować na dwa sposoby: −−z zewnętrznego źródła, np. sterownika PLC (opcja „Program processes input signals”) za pomocą sygnałów dwustanowych, transmisji za pośrednictwem portu szeregowego lub karty sieciowej, −−przez nadrzędną aplikację pracującą współbieżnie na komputerze wizyjnym (opcja „Program is remote-controlled by master”). W realizowanych aplikacjach wykorzystano oba sposoby.
3. Oprogramowanie wizyjne NeuroCheck Do tworzenia, edycji, a następnie realizacji programów kontroli wizyjnych kilku wdrożonych aplikacji przemysłowych PIAP wybrano pakiet oprogramowania NeuroCheck niemieckiej firmy NeuroCheck GmbH, pracujący pod kontrolą systemu operacyjnego Windows. W miarę wprowadzania kolejnych wersji systemu Windows (95, 98, NT, 2000, XP, 7) pakiet ten przystosowywano do współpracy z nimi. Swoje oprogramowanie firma NeuroCheck GmbH udostępnia bezpłatnie. W pełnej wersji pakiet ten można zainstalować na dowolnym komputerze PC, a jego aktualne możliwości funkcjonalne zależą od klucza sprzętowego (ang. dongle) umieszczonego w wolnym porcie USB lub LPT. W najprostszej wersji demo (bez klucza) zablokowane są wszystkie elementy sprzętowe związane z obsługą kamer i kart We/Wy. W tej wersji aplikacja wizyjna może być tworzona tylko na podstawie bitmapy odczytanej z pliku .bmp i nie można jej uruchamiać w trybie automatycznym, ale tylko przy pomocy myszy i klawiatury komputera. Tym niemniej wersja demo ma większość funkcji edycyjnych programu i spełnia istotną rolę edukacyjną. Przystosowanie gotowej aplikacji do współpracy z kamerą wymaga tylko zmiany źródła obrazu, a więc modyfikacji pojedynczego parametru odpowiedniej instrukcji. Program kontroli wizyjnej (ang. check routine) realizowany przez pakiet NeuroCheck składa się co najmniej z jednego modułu kontroli (ang. check). Pojedynczy moduł kontroli, będący rodzajem podprogramu, zawiera szereg makroinstrukcji (ang. check functions), które realizują transfer obrazu z kamery do pamięci komputera, filtrują go, wyznaczają fragmenty obrazu do analizy, przeprowadzają analizę i mogą obsługiwać sygnały dwustanowe – jeśli komputer wyposażono w kartę We/Wy obsługiwaną przez oprogramowanie NeuroCheck. Zainicjowanie programu kontroli wizyjnej zawsze wiąże się z uruchomieniem pierwszego modułu, a wykonanie kolejnych zależy od ustawionych warunków przejścia w module poprzedzającym (np. moduł nr 2 będzie wykonany, jeśli kontrola wizyjna w module nr 1 przyniosła wynik negatywny). Programy kontroli wizyjnej są zapisywane w plikach o rozszerzeniu .CHR, i dodatkowo, podczas określania ich właściwości przy pomocy NeuroCheck-a, mogą być oznaczane numerami. Obie te cechy zamiennie można wykorzystywać do ich wybierania w trybie pracy automatycznej.
3.1. Sterowanie programem NeuroCheck za pomocą sygnałów dwustanowych
Sterowanie za pomocą sygnałów dwustanowych jest dostępne, gdy komputer wizyjny jest wyposażony w kartę We/Wy obsługiwaną przez NeuroCheck (np. kartę DT2820 firmy Data Translation, OPTOIO-PCI16 firmy Wasco). Wymaga to uprzedniego zadeklarowania (rys. 1) następujących parametrów: −−nazwy katalogu w pamięci masowej komputera wizyjnego zawierającego pliki .CHR z aplikacjami wizyjnymi, każdej aplikacji podczas jej tworzenia i edycji należy przypisać unikatowy numer służący do jej wyboru, −−określenia którymi dwustanowymi sygnałami wejściowymi karty We/Wy komputera współpracujący sterownik PLC będzie mógł wybierać programy wizyjne do wykonania (sygnały „select check routine”) oraz którym sygnałem inicjuje wykonanie wybranego programu (sygnał „start check”), −−określenia którymi dwustanowymi sygnałami wyjściowymi karty We/Wy komputera program NeuroCheck będzie sygnalizował swoje załączenie i ustawienie w tryb pracy automatycznej (sygnał „system running”), potwierdzenie wykonania programu kontroli wizyjnej (sygnał „system ready”) i jego wynik (sygnały Check result OK/Not OK). Sterowanie realizowane jest w postaci opisanej sekwencji działań. Sterownik PLC odczytuje stan sygnału system running karty We/Wy informujący o uruchomieniu programu NeuroCheck i ustawieniu go w tryb pracy automatycznej. Jeśli uzyska potwierdzenie, to wysterowuje sygnały wskazujące numer programu wizyjnego do wykonania (sygnały select check routine), a następnie sygnałem start check inicjuje jego wykonanie. Program NeuroCheck wykonuje wybrany program kontroli i w zależności od wyniku wysterowuje jeden z dwóch sygnałów Check result OK lub Check result Not OK, następnie sygnałem system ready potwierdza zrealizowanie programu i ważność wyniku. Sterowanie za pomocą sygnałów dwustanowych ma istotne ograniczenie – wynik aplikacji wizyjnej ma postać dwuwartościową i nie ma prostego sposobu przekazania do współpracującego sterownika wartości wykonanego pomiaru wizyjnego lub treści odczytanego napisu. Ten rodzaj sterowania dobrze sprawdza się w aplikacjach wymagających sprawdzenia kompletności montażu, ale bez konieczności wnikania we właściwości kontrolowanych elementów.
Rys. 1. Okna dialogowe programu NeuroCheck do konfigurowania sterowania i przekazywania wyników w trybie pracy automatycznej Fig. 1. NeuroCheck’s dialog boxes to configure the vision control and presentation of results in the automatic mode
68
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Jacek Dunaj
3.2. Sterowanie programem NeuroCheck przez nadrzędną aplikcję komputera wizyjnego
Podczas pracy w trybie automatycznym programem NeuroCheck można sterować z poziomu aplikacji pracującej współbieżnie na komputerze wizyjnym. Jej działanie opiera się na wykorzystaniu oprogramowania NeuroCheck jako serwera aplikacji OLE (ang. Object Linking and Embedding). Technika OLE [13] polega na wymianie obiektów między aplikacjami działającymi w środowisku MS Windows. Typowym przykładem jest wklejanie obiektów utworzonych za pomocą arkuszy kalkulacyjnych do dokumentów edytorów tekstów. W automatyce pojęcie OLE uległo rozszerzeniu i obejmuje dostęp do określonych funkcji jednej aplikacji (serwera) przez inną aplikację (klienta). W opisywanym przypadku aplikacja nadrzędna (klient) steruje wybieraniem programów wizyjnych przez NeuroCheck (serwer), inicjuje ich wykonanie i odczytuje wyniki. Aplikacja może też realizować wszystkie zadania związane ze sterowaniem stanowiskiem wizyjnym – współpracować z transporterami, robotem, stołem obrotowym, czytnikiem kodu kreskowego, wykonywać obsługę baz danych, generować i drukować raport końcowy etc. W sterowaniu w trybie OLE aplikacja nadrzędna (klient) inicjuje połączenie z NeuroCheck (serwer), następnie sprawdza klucz licencyjny oprogramowania. Sprawdzenie ma na celu kontrolę uprawnień (praca w trybie OLE jest możliwa tylko dla klucza full-version lub run-time-version) oraz potwierdzenie, czy NeuroCheck został skonfigurowany jako serwer OLE (opcja „Program is remote-controlled by master” (rys. 1). Następnie aplikacja wykorzystując udostępnione przez serwer NeuroCheck metody, może wskazać plik o rozszerzeniu .CHR zawierający aplikacyjny program wizyjny i zainicjować jego wykonanie. Przed wykonaniem tego programu możliwe jest zdalne parametryzowanie niektórych jego makroinstrukcji (ang. check functions), a po jego wykonaniu – odczyt wyników generowanych przez inne makroinstrukcje. Aplikacja nadrzędna ma więc dostęp nie tylko do globalnego wyniku wykonania programu wizyjnego, ale także do wyników wybranych makroinstrukcji. Przedstawiony mechanizm sterowania programem NeuroCheck w trybie OLE opisano w [8]. Aplikację nadrzędną można utworzyć w języku C/C++, Visual Basic lub Borland Delphi, ale ze względu na efektywność kodu zalecany jest język C/C++. Dostarczana jest też biblioteka Ncheck.tlb zawierającą informacje o typach danych, funkcjach i klasach udostępnianych przez serwer NeuroCheck.
4. Koncepcja kontroli wizyjnej złożonych wyrobów Wspomniano uprzednio, że zapytania ofertowe dotyczące budowy stanowisk kontroli wizyjnej dotyczyły najczęściej sprawdzania wielu elementów, które w różnych konfiguracjach mogły być montowane w podobnych wyrobach. Naturalnym rozwiązaniem byłoby opracowanie tylu aplikacji wizyjnych, ile jest sprawdzanych wyrobów, każda do kontroli innego wyrobu. Jednakże w tym rozwiązaniu pojawia się pewien problem – zmiana właściwości wybranego elementu wymusza modyfikację wszystkich aplikacji, które sprawdzają ten element. Ponadto te same fragmenty oprogramowania będą powtarzać się w wielu programach wizyjnych, co utrudnia wprowadzanie ewentualnych poprawek. Dlatego przyjęto koncepcję modułowości programów kontroli wizyjnej polegającą na tym, że pojedyncza aplikacja NeuroCheck sprawdza tylko jeden wybrany element wyrobu i niezależnie od pozostałych określa, czy kontrolowany detal spełnia zadane kryteria oceny. O tym, które programy mają być wykonywane decyduje nie sztywna sekwencja zapamiętana w komputerze wizyjnym, ale sekwencja narzucona przez współpracujący sterownik PLC lub nadrzędną aplikację komputera wizyjnego. W drugim przypadku można też ustalać kolejność wykonywania poszczególnych programów wizyjnych.
5. Realizacja kontroli wizyjnej za pomocą sterownika PLC W przypadku sterowania kontrolą wizyjną przez współpracujący sterownik PLC przyjmuje się założenie, że na stanowisku można maksymalnie sprawdzać m różnych wyrobów, a liczba wszystkich elementów (detali) podlegających kontroli wynosi n, przy czym nie każdy element występuje na danym wyrobie. Należy zatem uruchomić n różnych programów wizyjnych, każdy do sprawdzania pojedynczego elementu i opracować schemat sterowania wyborem tych programów do kontroli całego wyrobu. W tym celu w pamięci sterownika PLC zadelarowano dwuwymiarową tablicę bool Wyroby[m][n]; uporządkowaną według schematu: element 1:
element 2:
………………….
element n:
wyrób 1:
true/false
………………….
true/false
wyrób 2:
true/false
………………….
true/false
…………………. wyrób m:
true/false
true/false
………………….
true/false
Jeśli element tablicy Wyroby[i][j] ma wartość true, to oznacza, że podczas sprawdzania i-tego wyrobu ma zostać wykonanana kontrola wizyjna j-tego elementu (detalu), w przeciwnym razie (false) kontrola tego elementu będzie pominięta. Kolejna, tym razem jednowymiarowa tablica Elementy[n] zawiera dane niezbędne do wykonania kontroli wizyjnej poszczególnych elementów (detali). Każdy element tej tablicy przechowuje informację opisaną strukturą: struct element short char short }
{ NumerProgramu; *Opis SterowanieOswietlaczami;
gdzie: NumerProgramu – kombinacja wyjściowych sygnałów dwustanowych służących do wyboru programu NeuroCheck sprawdzającego wybrany element, *Opis – wskaźnik (ang. pointer) do tekstu komentarza wyświetlanego na monitorze podłączonym do sterowanika podczas kontroli wizyjnej wybranego elementu, SterowanieOswietlaczami – kombinacja wyjściowych sygnałów dwustanowych służących do wysterowania poszczególnych oświetlaczy przed realizacją kontroli wizyjnej wybranego elementu. Kontrola wizyjna wyrobu rozpoczyna się od odczytania z tablicy Wyroby[][] informacji, które elementy mają być sprawdzane, a następnie na kolejnym wykonywaniu programów sprawdzających wybrane detale. Wyniki kontroli poszczególnych elementów są zapamiętywane w pamięci sterownika, a po ich zakończeniu służą do określenia globalnego wyniku kontroli całego wyrobu. Pierwszą złożoną aplikacją zrealizowaną przez Przemysłowy Instytut Automatyki i Pomiarów PIAP i pracującą według przedstawionego schematu było stanowisko do kontroli wizyjnej metalowych stelaży siedzeń samochodowych wykonane dla zakładów „Faurecia” w Grójcu [1, 2]. Było to stanowisko złożone z 12 nieruchomych kamer analogowych z oświetlaczami pierścieniowymi zamocowanymi wewnątrz światłoszczelnego kiosku. Po umieszczeniu stelaża siedzenia w specjalnym uchwycie operatorzy stanowiska wskazywali typ siedzenia (wyrobu) za pomocą jednego z 20 przycisków wyboru, a następnie inicjowali przemieszczenie uchwytu do środka i wykonanie kontroli wizyjnej. Zastosowanym sterownikiem PLC był sterownik PS HC20 firmy
69
Rozwiązania programowe w sterowaniu zaawansowanymi aplikacjami wizyjnymi Festo, o architekturze komputera PC pracujący pod kontrolą systemu operacyjnego MS DOS. Jego aplikacja, napisana w języku C i częściowo asemblera procesora 86, sterowała wykonywaniem kontroli wizyjnych siedzeń oraz działaniem samego stanowiska, tzn. obsługą transportera, przycisków, lampek sygnalizacyjnych i drukarki tamponowej. Aplikację wyposażono w interfejs technologa, który pozwalał na modyfikację i zapamiętywanie w pamięci masowej zawartości tablic Wyroby[m][n] i Elementy[n], a w trakcie wykonywania kontroli wizyjnej – wyświetlał informację o wynikach oceny poszczególnych detali. Ze sterownikiem współpracował komputer przemysłowy PC firmy Advantech, pracujący pod kontrolą systemu operacyjnego Windows z osadzonym oprogramowaniem NeuroCheck. Komputer ten wyposażono w trzy karty akwizycji obrazu DT3155 PCI, każda do obsługi czterech kamer i pojedynczą kartę We/Wy dwustanowych DT2820 (obie produkcji Data Translation).
dodatkowo zastosowano czteropozycyjny stół obrotowy, na którym osadzano sprawdzaną skrzynię. Zasadniczej zmianie musiała ulec koncepcja sterowania aplikami wizyjnymi, ponieważ wynik kontroli większości elementów nie miał już postaci tylko dwuwartościowej Check OK/ Check Not OK. Konieczne było opracowanie sposobu definiowania algorytmu wyznaczającego rezultat kontroli pojedynczego elementu generowany na podstawie wyników działania kilku programów wizyjnych. W efekcie opracowano schemat aplikacji, który z pewnymi modyfikacjami zastosowano też w stanowiskach pomiarowych korpusów świec zapłonowych wykonanych dla firmy Iskra Kielce, fabryki poszyć siedzeń samochodowych Lear w Tychach (tego projektu ostatecznie nie sfinalizowano, ale z powodów nie dotyczących systemu wizyjnego) oraz stanowiskach wystawowych promujących PIAP. Aby aplikacja nadrzędna funkcjonowała niezależnie od typu wyrobu (skrzyni biegów), a jednocześnie, aby samo stanowisko było łatwo adaptowalne do kontroli nowych skrzyń bez potrzeby modyfikacji samej aplikacji zdecydowano, że wszelkie informacje niezbędne do przeprowadzenia pełnej kontroli skrzyni będą zawarte w bazie danych oraz w dodatkowym pliku tekstowym opisującym sposób interpretacji wyników i postać raportu końcowego. Narzucono także ograniczenia dotyczące formatu programów kontroli wizyjnej w zależności od właściwości elementu, który miały sprawdzać.
6. Realizacja kontroli wizyjnej za pomocą nadrzędnej aplikacji komputera PC Kontrola wizyjna wykonywana dla zakładów Faurecia Automotive Polska w Grójcu odpowiadała na pytanie, czy dany element zamontowano czy przeoczono jego montaż. Programy wizyjne nie wnikały ani we właściwości elementu, ani w dużej mierze w prawidłowość montażu. Przyjętym i uzasadnionym założeniem było to, że we wszystkich rodzajach stelaży dany detal (jeśli występował) mocowano zawsze w tym samym miejscu ramy, a więc do sprawdzenia jego obecności niezależnie od wybranego stelaża można było wykorzystać tę samą kamerę. Większe problemy wystąpiły podczas realizacji aplikacji wizyjnej dla przemysłu maszynowego, która miała sprawdzać skrzynie biegów produkowane w zakładach Eaton w Tczewie. W tym przypadku kontrolowano nie tylko obecność różnych elementów, ale także ich wymiary i zgodność napisów grawerowanych na poszczególnych częściach sprawdzanych skrzyń. Od początku było wiadomo, że każda odmiana skrzyni biegów różni się od pozostałych nie tylko liczbą sprawdzanych detali, ale także kolejnością wykonywania elementarnych kontroli. Nawet sprawdzanie identycznych elementów, jak napisy na tabliczkach znamionowych, były różnie realizowane w zależności od odmiany skrzyni, nie tylko ze względu na różnice w ich lokalizacji, ale także ze względu na to, że inne elementy skrzyni mogły je zasłaniać lub powodować dodatkowe refleksy od zewnętrznych źródeł światła. Sprawdzanym elementem mogła być obecność tabliczki znamionowej, zgodność niektórych napisów na tabliczce i na odlewie korpusu skrzyni, pomiar średnicy pokrywy wałka, obecność śruby z otworem etc. W niektórych przypadkach programy kontroli wizyjnej dawały prostą odpowiedź „jest detal” lub „brak detalu”, w innych zwracały odczytany napis, jeszcze w innych – wartość liczbową pomiaru wizyjnego. Jeśli program wizyjny identyfikował napis, to nie wystarczało wyświetlenie informacji o tym, co odczytano. Pełna informacja oznaczała ocenę prawdopodobieństwa poprawnej identyfikacji i porównanie z tym, co faktycznie powinno zostać nabite na elementach skrzyni biegów (np. numer wałka napędowego). Firma Eaton zastrzegła sobie, aby aplikacja sterująca stanowiskiem była w pełni uniwersalna, tzn. aby bez wprowadzania do niej dodatkowych modyfikacji możliwa była kontrola wizyjna skrzyń, które dopiero wejdą do produkcji, a parametryzowanie tej kontroli mogło odbywać się we własnym zakresie. Dodatkowym żądaniem było pełne archiwizowanie wyników kontroli wraz ze zdjęciami sprawdzanych elementów. Różnorodność odmian skrzyń biegów i rozmieszczenie sprawdzanych elementów sprawiło, że projektując stanowisko zrezygnowano z wielokamerowego systemu (stosowanego w aplikacji dla Faurecii Grójec), na rzecz pojedynczej kamery zamocowanej na ramieniu robota. Ponieważ mimo użycia manipulatora część elementów skrzyń nadal pozostawała poza zasięgiem kamery,
70
P
O
M
I
A
R
Y
•
A
U
T
O
M
6.1. Formaty programów kontroli wizyjnej – założenia
Zasady stosowania NeuroCheck jako serwera aplikacji OLE zakładają udostępnianie szeregu informacji, które pozwalają m.in. na odczytanie rezultatów wykonania niektórych makroinstrukcji. W tym celu aplikacja klienta NeuroCheck musi mieć informację o położeniu instrukcji w programie oraz znać format informacji, którą zamierza odczytać. Dla ujednolicenia odwołań do poszczególnych programów kontroli wizyjnej z poziomu aplikacji OLE przyjęto podział na kilka kategorii programów oraz narzucono pewne ograniczenia co do ich formatu.
6.1.1. Programy kontroli obecności detalu
Kategoria obejmująca programy wizyjne sprawdzające obecność lub prawidłowość zamocowania pojedynczego detalu. Programy te zwracają jedynie wartość logiczną Check OK/Check Not OK, określającą czy zidentyfikowano obecność detalu lub czy zidentyfikowano jego prawidłowe położenie. Z punktu widzenia aplikacji nadrzędnej nie jest istotne, ile modułów kontroli (ang. check) zawiera program kontroli wizyjnej (ang. check routine), jak są wykonywane i jakie instrukcje zawierają. Aplikacja nadrzędna do dalszych rozważań bierze pod uwagę tylko globalny wynik generowany przez program, nie odczytuje rezultatu wykonania pojedynczego modułu kontroli, ani rezultatów wykonania pojedynczych makroinstrukcji (ang. check function).
6.1.2. Programy identyfikacji napisów
Kategoria obejmuje programy wizyjnej identyfikacji napisów. Programy te zwracają trzy różne informacje: liczbę znaków zidentyfikowanych, znaki zidentyfikowane oraz logiczny wynik identyfikacji Check OK/Check Not OK. Ostatnia wielkość określa, czy prawdopodobieństwo poprawnej identyfikacji znaków jest poniżej lub powyżej stałej wartości ustalonej w programie wizyjnym. Można przyjąć, że cyfrę „8” odczytano poprawnie, jeśli ustalono, że prawdopodobieństwo poprawnej identyfikacji wynosi 90%. Jeśli próg ten wynosi tylko 20%, to za cyfrę „8” program wizyjny może przyjąć zarówno cyfrę „8”, jak i „3”. Każda z wartości zwracanych przez programy tej kategorii musi podlegać weryfikacji przez aplikację nadrzędną. Przyjęto zatem następujące założenia dotyczące formatu tej kategorii programów: 1. Program kontroli wizyjnej może być złożony z dowolnej liczby modułów kontroli. A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Jacek Dunaj 2. Szczegółowe informacje dotyczące liczby odczytanych znaków oraz same zidentyfikowane znaki uzyskuje się odczytując wyniki wykonania makroinstrukcji zawartych w ostatnim module kontroli programu wizyjnego. 3. Liczbę zidentyfikowanych znaków obligatoryjnie podaje pierwsza makroinstrukcja Count Rols zawarta w ostatnim module kontroli programu wizyjnego. Jeśli jest to niezbędne, wewnątrz tego modułu mogą występować inne makroinstrukcje Count Rols, ale ich rezultaty nie uwagę są istotne dla aplikacji nadrzędnej. Wynik Count Rols jest niezbędny dla ustalenia zakresu pętli programowej odczytującej zidentyfikowane znaki. W makroinstrukcji Count Rols trzeba zablokować opcję wystawiania końcowej oceny wykonania programu kontroli wizyjnej (tzn. by nie mogła wystawiać informacji Check OK/ Check Not OK, tym samym przedwcześnie kończyć wykonywanie całego programu kontroli wizyjnej). 4. Jako ostatnia makroinstrukcja wewnątrz ostatniego modułu kontroli musi wystąpić makroinstrukcja Evaluate Classes. Jej zadaniem jest przekazanie do nadrzędnej aplikacji OLE informacji o zidentyfikowanych klasach oraz prawdopodobieństwie ich wystąpienia. Obligatoryjnie przyjmuje się, że nazwa klasy (ciąg znakowy odpowiadający nazwie klasy) składa się tylko z jednego znaku, który odpowiada identyfikowanemu znakowi (np. klasa o nazwie „8” odpowiada znakowi 8). Makroinstrukcja ta ma odblokowaną opcję wystawiania oceny wykonania programu kontroli wizyjnej. Jeśli jest to niezbędne, wewnątrz tego modułu kontroli mogą wcześniej występować inne instrukcje Evaluate Classes, ale rezultatów ich wykonania aplikacja nadrzędna nie bierze pod uwagę. Aplikacja nadrzędna ten rodzaj kontroli wizyjnej obsługuje w następujący sposób: −−z bazy danych odczytuje, ile znaków powinno być zidentyfikowanych, −−określa, ile modułów kontroli zawiera program kontroli wizyjnej, aby wyznaczyć indeks ostatniego modułu, −−określa, ile makroinstrukcji zawiera ostatni moduł w programie kontroli wizyjnej, aby wyznaczyć indeks ostatniej makroinstrukcji (z założenia jest to makroinstrukcja Evaluate Classes), −−w ostatnim module kontroli odszukuje pierwszą w kolejności makroinstrukcję Count Rols, a następnie jako rezultat jej wykonania odczytuje, ile znaków faktycznie zidentyfikowano. Jeśli wartość ta nie zgadza się z odczytem z bazy danych, rezultat działania programu kontroli wizyjnej będzie Check Not OK, ale to nie zakończy obsługi programu, −−odczytując rezultat wykonania ostatniej makroinstrukcji Evaluate Classes ustala, jaki ciąg znaków faktycznie został odczytany (na podstawie zidentyfikowanych klas), −−odczytując wynik logiczny wykonania całego programu kontroli wizyjnej (Check OK/ Check Not OK) aplikacja nadrzędna ustala, czy identyfikacja znaków jest powyżej, czy poniżej ustalonego progu pewności. Rezultatem wykonania programu identyfikacji napisu jest zatem informacja: −−ile znaków zidentyfikowano (wynik makroinstrukcji Count Rols), −−jakie znaki zidentyfikowano (wynik makroinstrukcji Evaluate Classes), −−jaki jest wynik logiczny wykonania całego programu kontroli wizyjnej (Check OK/ Check Not OK), −−jaka jest ewentualna przyczyna rezultatu Check Not OK. W dalszej części aplikacja nadrzędna określa, czy zidentyfikowane znaki są tymi, jakie powinny być nabite na detalu (np. przez porównanie z napisem wzorcowym z bazy danych lub z napisem odczytanym czytnikiem kodu kreskowego).
6.1.3. Programy wykonujące pomiary wizyjne
Kategoria obejmuje programy wykonujące pomiary wizyjne, np. pomiary średnic wałków. Zwracają one do aplikacji nadrzędnej dwie różne informacje: wartość zmierzonej wielkości
(liczba zmiennoprzecinkowa) oraz logiczny rezultat wykonania programu Check OK/ Check Not OK. W drugim przypadku wartość Check OK jest zwracana, jeśli program wizyjny ocenił, że zmierzona wartość mieści się w granicach tolerancji określonych wewnątrz tego programu (nie ma potrzeby, aby aplikacja nadrzędna znała granice tolerancji). Przyjęto następujące założenia dotyczące formatu tej kategorii programów: 1. Pojedynczy program kontroli wizyjnej wykonuje pomiar jednej wielkości (np. średnicy wałka w jednym miejscu). 2. Program kontroli wizyjnej może być złożony z dowolnej liczby modułów kontroli. 3. Szczegółowe informacje dotyczące wartości pomiaru uzyskuje się odczytując wyniki wykonania makroinstrukcji zawartych w ostatnim module kontroli programu wizyjnego. 4. Ostatnią makroinstrukcją wewnątrz ostatniego modułu kontroli obligatoryjnie musi być makroinstrukcja Check Allowances. Przekazuje ona do aplikacji nadrzędnej informację o wyniku pomiaru. 5. Jeśli jest to niezbędne, wewnątrz ostatniego modułu kontroli wcześniej mogą występować inne instrukcje Check Allowances, ale ich rezultaty aplikacja nadrzędna nie bierze pod uwagę. Aplikacja nadrzędna ten rodzaj kontroli wizyjnej obsługuje w następujący sposób: −−określa ile modułów kontroli zawiera program wizyjny, tak aby wyznaczyć indeks ostatniego modułu, −−określa ile makroinstrukcji zawiera ostatni moduł kontroli, tak aby wyznaczyć indeks ostatniej makroinstrukcji (z założenia jest to makroinstrukcja Check Allowances), −−odczytując rezultat wykonania ostatniej makroinstrukcji Check Allowances, w ostatnim module kontroli określa wynik pomiaru, −−odczytując wynik logiczny wykonania całego programu wizyjnego (Check OK/ Check Not OK) aplikacja nadrzędna ustala, czy pomiar mieści się w przedziale tolerancji (na podstawie rezultatu Check OK lub Check Not OK wystawianego przez Check Allowances. Rezultatem wykonania programu jest wynik pomiaru wizyjnego i informacja, czy wynik mieści się w przedziale tolerancji. Przynależność do każdej z wymienionych kategorii programów wizyjnych jednoznacznie narzuca sposób obsługi programu przez aplikację nadrzędną.
6.2. Atrybuty programów wizyjnych
Każdy program kontroli wizyjnej musi mieć jednoznacznie określone atrybuty pozwalające aplikacji nadrzędnej zlokalizować ten program w pamięci masowej, wskazać go do wykonania przez oprogramowanie NeuroCheck, wybrać sposób odczytu wyników oraz przygotować stanowisko do jego wykonania. Atrybutami tymi są: 1. Nazwa programu wizyjnego. Atrybut określa lokalizację pliku, tzn. urządzenie, katalog i nazwę pliku zawierającego program kontroli wizyjnej realizowany przez pakiet NeuroCheck. 2. Opis programu wizyjnego. Atrybut określa komunikat wyświetlany przez aplikację nadrzędną podczas realizacji programu. Ważną funkcję atrybut ten pełni przy archiwizowaniu wyników działania programu. Firma Eaton zastrzegła, że archiwizowane mają być nie tylko wyniki kontroli wizyjnych, ale i zdjęcia sprawdzanych elementów. W tym przypadku opis programu jest wykorzystywany przez aplikację nadrzędną do generowania nazwy pliku zawierającego zdjęcie sprawdzanego elementu. 3. Typ programu wizyjnego. Atrybut określa przynależność do jednej z kategorii programów wizyjnych. Przyjęto, że wartość 0 oznacza kategorię programów kontroli obecności detalu, 1 – kategorię programów identyfikacji napisów, 2 – kategorię programów wykonujących pomiary wizyjne. 4. Liczba znaków. Atrybut stosowany tylko do kategorii programów identyfikacji napisów. Jedną z informacji zwracanych
71
Rozwiązania programowe w sterowaniu zaawansowanymi aplikacjami wizyjnymi przez tę kategorię programów jest liczba zidentyfikowanych znaków. Jeśli program wizyjny ocenił, że prawdopodobieństwo poprawnej identyfikacji jest powyżej ustalonego progu (wynik Check OK), to wcale nie oznacza, że odczytany napis jest poprawny. Drugim kryterium oceny poprawności odczytu jest weryfikacja liczby zidentyfikowanych znaków z liczbą znaków, jakie faktycznie powinny być wygrawerowane na elemencie. Właśnie tę liczbę znaków określa ten atrybut. 5. Czas ekspozycji kamery. W aplikacji do kontroli wizyjnej skrzyń biegów zastosowano wysokiej klasy cyfrową, monochromatyczną kamerę wizyjną A101p firmy Basler o rozdzielczości 1300 px × 1030 px. Jest ona wyposażona w obiektyw, w którym sterowanie nastawami ostrości i przysłony można realizować tylko ręcznie, a więc w sposób niedostępny w automatycznym trybie pracy stanowiska. Ze względu na różne rozmiary sprawdzanych elementów różne są odległości z których są one „fotografowane” przez kamerę. Dlatego jedyną metodą na uzyskanie poprawnego obrazu jest sterowanie czasem ekspozycji kamery i źródłami światła. Czas ekspozycji kamery można ustawiać w zakresie od 140 µs do 131 070 µs, a programowanie odbywa się za pomocą kanału RS-232 komputera wizyjnego. Atrybut ten określa czas ekspozycji kamery stosowany podczas realizacji programu kontroli wizyjnej. 6. Oświetlacze. Aplikacja nadrzędna stanowiska do kontroli wizyjnej skrzyń biegów umożliwia sterowanie czterema różnymi oświetlaczami. Dwa oświetlacze pierścieniowe zamontowano współosiowo z obiektywem kamery, a jeden oświetlacz typu backlight zamocowano na podstawie stołu obrotowego (czwarty oświetlacz jest rezerwowy). Atrybut ten określa, jakie oświetlacze mają być zapalane podczas realizacji programu kontroli wizyjnej. 7. Położenie stołu obrotowego. Każda skrzynia biegów w czasie kontroli wizyjnych jest umieszczona w specjalnym uchwycie osadzonym w stałym położeniu względem blatu stołu obrotowego. Ze względu na dostęp kamerą do poszczególnych elementów każdej skrzyni, blat stołu można ustawiać w czterech stabilnych pozycjach względem jego podstawy. Atrybut określa, w jakim położeniu ma być ustawiony blat stołu względem jego podstawy podczas realizacji programu kontroli wizyjnej. Aplikacja nadrzędna sterująca kontrolą wizyjną nie potrzebuje żadnej informacji o tym, co faktycznie dany program wizyjny sprawdza (opis programu jest informacją dla operatora). Istotne jest, jaki program wizyjny ma zostać wykonany przez pakiet NeuroCheck (atrybut Nazwa programu), jak wysterować poszczególne elementy stanowiska podczas jego wykonywania (atrybuty Czas ekspozycji kamery, Oświetlacze, Położenie stołu obrotowego) oraz jak odczytać i zinterpretować rezultaty wykonania programu (atrybuty Typ programu i Liczba znaków).
Informację o kolejności wykonywania programów oraz ich atrybuty aplikacja nadrzędna odczytuje z bazy danych.
6.4. Baza danych z informacjami dla kontroli wizyjnych
Bazę danych z informacjami dla kontroli wizyjnych utworzono w formacie Access 2000 i zapisano w pliku: DaneDlaKontroliWizyjnych.mdb. Z punktu widzenia aplikacji nadrzędnej miejsce zapisania pliku z bazą danych (tj. urządzenie i katalog) są dowolne, ponieważ aplikacja odwołuje się do niej przez mechanizm systemu Windows określany jako ODBC (ang. Open Database Connectivity). Sama baza zawiera następujące tabele: DaneProb1, DaneProb2. Podział na dwie tabele wynika z faktu, że program Access 2000 nakłada ograniczenia dotyczące liczby pól (kolumn) zawartych w pojedynczej tabeli – maksymalnie tabela może zawierać ok. 240 pól (tabela DaneProb1 zawiera 208 pól, tabela DaneProb2 – 183 pola).
6.4.1. Struktura tabeli DaneProb1
Tabela DaneProb1 zawiera 208 pól (kolumn), które można podzielić na następujące grupy: −−pole identyfikujące wyrób – skrzynię biegów (1 kolumna). Jest ono kluczem podstawowym tabeli DaneProb1, na jego podstawie aplikacja wybiera rekord z informacjami dla kontroli wizyjnych określonego wyrobu, −−pole identyfikujące kolejność wykonywania kontroli wizyjnych (1 kolumna). Jest to pole zawierające ciąg znakowy określający kolejność wykonywania poszczególnych programów kontroli wizyjnej (parametry tych programów są zawarte w dalszych kolumnach obu tabel DaneProb1 i DaneProb2). Kolejność wykonywania programów będzie określona przez porządek liter A–Z, a–z. Ciąg znaków BzDAa wymusza wykonanie kolejno pięciu programów wizyjnych o nazwach zawartych w kolumnach: „B Nazwa programu”, „z Nazwa Programu”, „D Nazwa Programu”, „A Nazwa Programu”, „a Nazwa Programu”. Pole to nie ma wartości domyślnej i nie może zawierać innych znaków niż małe i duże litery alfabetu łacińskiego. −−pole identyfikujące program robotowy (1 kolumna). Zawartość tego pola określa położenie pliku w pamięci masowej robota (urządzenie, katalog i nazwę pliku) zawierającego podprogram robota sterujący manipulatorem podczas kontroli wizyjnej wybranego wyrobu (skrzyni biegów). Aplikacja nadrzędna przesyła kanałem RS-232 do sterownika robota odczytane z bazy położenie pliku. Na podstawie tej informacji program główny robota wybiera, a następnie uruchamia właściwy moduł programowy sterujący manipulatorem podczas wykonywania kontroli wizyjnej. −−pole identyfikujące plik konfiguracyjny raportu (1 kolumna). Zawartość tego pola identyfikuje plik konfiguracyjny raportu (urządzenie, katalog i nazwę pliku konfiguracyjnego). Informacja zawarta w pliku konfiguracyjnym raportu jest rodzajem programu umożliwiającego wykonanie globalnej oceny kontroli wizyjnej określonego wyrobu (skrzyni biegów) oraz formatowanie raportu końcowego. −−pola identyfikujące format wydruku raportu (12 kolumn). Pola te zawierają informacje dotyczące formatowania wydruku raportu końcowego z wynikami kontroli wizyjnej. Informacjami tymi są: rodzaj użytej czcionki, jej rozmiar, odstępy między wierszami, położenie i rozmiar ramek oraz okna wydruku w stosunku do wymiarów kartki papieru, na której aplikacja wykonuje wydruk raportu końcowego. Wymiary kartki papieru i orientacja wydruku są ustalane globalnie jako ustawienia domyślnej drukarki zainstalowanej w systemie operacyjnym Windows. −−pola identyfikujące napisy wzorcowe (10 kolumn). Pola te zawierają 10 różnych tekstów wzorcowych charakterystycz-
6.3. Oznaczenia programów wizyjnych
Aplikację nadrzędną i niezbędną bazę danych zaprojektowano tak, że w ramach sprawdzania pojedynczego wyrobu (skrzyni biegów) możliwe jest wykonanie do 52 różnych programów wizyjnych. W przypadku stanowiska wykonanego dla firmy Eaton faktyczna liczba programów wymaganych do sprawdzenia przeciętnej skrzyni nie przekraczała 30. Istotne było określenie, które programy wizyjne i w jakiej kolejności mają być wykonywane w przypadku sprawdzania danego wyrobu (skrzyni biegów). Każdy z 52 potencjalnych programów wizyjnych ma przyporządkowane 7 atrybutów, a więc potencjalnie w bazie danych potrzeba 7 × 52 = 364 pól z atrybutami. Przyjęto, że każdy program kontroli wizyjnej jest oznaczony pojedynczą, różną dla każdego programu, literą alfabetu łacińskiego A–Z lub a–z. Korzystając z tego przyporządkowania można określić ciąg literowy o długości nieprzekraczającej 52 znaków, w którym kolejność liter jednoznacznie opisuje kolejność wybierania poszczególnych programów kontroli wizyjnej.
72
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Jacek Dunaj nych dla wyrobu (skrzyni biegów). Każdy tekst wzorcowy określa stały napis, jaki zawsze powinien występować na wybranym elemencie określonej odmiany skrzyni biegów, niezależnie od jej egzemplarza. Takim napisem jest np. numer identyfikujący wałek napędowy. Jednym z zadań aplikacji wizyjnej jest identyfikacja napisu i porównanie go z tekstem wzorcowym odczytanym z bazy danych. −−pola identyfikujące kolejne 26 kontroli wizyjnych (26 × 7 = 182 kolumny). Pola te zawierają informację dla wykonania 26 różnych kontroli wizyjnych oznaczonych dużymi literami od A do Z (po 7 pól dla każdej kontroli): Program kontroli wizyjnej Program kontroli wizyjnej oznaczony literą „A”: oznaczony literą „B”:
..........
Program kontroli wizyjnej oznaczony literą „Z”:
A Nazwa programu
B Nazwa programu
..........
Z Nazwa programu
A Opis kontroli wizyjnej
B Opis kontroli wizyjnej
..........
Z Opis kontroli wizyjnej
A Typ programu
B Typ programu
..........
Z Typ programu
A Liczba znakow
B Liczba znakow
..........
Z Liczba znakow
A Czas ekspozycji kamery
B Czas ekspozycji kamery
..........
Z Czas ekspozycji kamery
A Oswietlacze
B Oswietlacze
..........
Z Oswietlacze
A Polozenie stolu obrotowego
B Polozenie stolu obrotowego
..........
Z Polozenie stolu obrotowego
Dla określonego wyrobu (typu skrzyni biegów) nie każda z 26 grup pól musi zawierać informacje, obligatoryjnie niezbędne jest wypełnienie tylko tych kolumn, które odpowiadają kontrolom wizyjnym zadeklarowanym w polu identyfikującym kolejność wykonywania kontroli wizyjnych
6.4.2. Struktura tabeli DaneProb2
Tabela DaneProb2 jest uzupełnieniem tabeli DaneProb1 i zawiera 183 pola (kolumny), które można podzielić na następujące grupy: −−pole identyfikujące wyrób, czyli skrzynię biegów (1 kolumna). Jest ono kluczem podstawowym tabeli DaneProb2, na podstawie jego zawartości aplikacja wybiera rekord z informacjami dla kontroli wizyjnych określonego wyrobu (skrzyni biegów), −−pola identyfikujące kolejne 26 kontroli wizyjnych (26 × 7 = 182 kolumny) Pola te zawierają informację dla wykonania 26 różnych kontroli wizyjnych oznaczonych małymi literami od a do z (po 7 pól dla każdej kontroli): Program kontroli wizyjnej oznaczony literą „a”:
Program kontroli wizyjnej oznaczony literą „b”:
..........
Program kontroli wizyjnej oznaczony literą „z”:
a Nazwa programu
b Nazwa programu
..........
z Nazwa programu
a Opis kontroli wizyjnej
b Opis kontroli wizyjnej
..........
z Opis kontroli wizyjnej
a Typ programu
b Typ programu
..........
z Typ programu
a Liczba znakow
b Liczba znakow
..........
z Liczba znakow
a Czas ekspozycji kamery
b Czas ekspozycji kamery
..........
z Czas ekspozycji kamery
a Oswietlacze
b Oswietlacze
..........
z Oswietlacze
a Polozenie stolu obrotowego
b Polozenie stolu obrotowego
..........
z Polozenie stolu obrotowego
Znaczenie tych pól, charakter i ograniczenia wprowadzania danych są identyczne jak w przypadku tabeli DaneProb1. Aplikacja nadrzędna może tylko odczytywać informacje z bazy danych dla kontroli wizyjnych. Tak więc do wprowadzania, edycji i usuwania informacji z tej bazy niezbędne jest użycie programu Access. Dla ułatwienia wprowadzania i przeglądania informacji do/z obu tabel dodatkowo wykonano dwa formularze (rys. 2): Formularz1 dla tabeli DanePrób1, Formularz2 dla tabeli DanePrób2.
6.4.3. Weryfikacja danych odczytanych z bazy przed wykonaniem kontroli wizyjnej
Podczas definiowania niektórych pól obu tabel bazy danych DaneDlaKontroliWizyjnych.mdb ustawiono dodatkowe filtry kontrolujące poprawność wprowadzanych danych.
Po wpisaniu przez operatora identyfikatora wyrobu (skrzyni biegów) aplikacja nadrzędna stanowiska przeszukuje tabele DanePrób1 i DanePrób2 w poszukiwaniu rekordów odpowiadających wprowadzonemu identyfikatorowi, odczytuje z nich informację, a następnie poddaje ją dodatkowej weryfikacji. Sprawdzane są m.in. obecność w pamięci masowej komputera wizyjnego wszystkich programów NeuroCheck wymienionych w polach identyfikujących kolejność wykonywania kontroli wizyjnych i atrybuty tych programów (szczegółowy opis zawiera [3]). Jednak nie wszystkie informacje odczytane z bazy danych mogą zostać zweryfikowane przed rozpoczęciem wykonywania kontroli wizyjnej. Aplikacja nadrzędna nie może sprawdzić fizycznej obecności programu aplikacyjnego robota w jego pamięci masowej, zweryfikowania danych formatowania wydruku raportu końcowego przed utworzeniem tego raportu oraz skontrolowania poprawności formatów programów kontroli wizyjnej. Ponieważ lista nieprawidłowości może być długa, szczególnie w trakcie opracowywania kontroli wizyjnej nowego wyrobu, toteż w trakcie weryfikacji tworzony jest dodatkowy plik tekstowy Diagnostic.txt. Do tego pliku sukcesywnie dopisywane są komunikaty o kolejnych błędach wykrytych podczas weryfikacji informacji odczytanej z bazy danych oraz pliku konfiguracyjnego raportu. W przypadku wykrycia błędu operator może przeglądać zawartość tego pliku, a więc odczytać opis znalezionych błędów (rys. 3). Plik Diagnostic.txt jest zapisywany w tym samym katalogu, co aplikacja nadrzędna. Jego zawartość dotyczy tylko ostatnio wykonanej weryfikacji (informacje nie są dopisywane do pliku).
6.5. Raport końcowy przeprowadzonej kontroliwizyjnej wyrobu
Liczba programów wizyjnych realizowanych w ramach sprawdzania danego wyrobu (skrzyni biegów) nie przekłada się na liczbę zadań kontrolnych, ponieważ każde zadanie może wymagać wykonania od jednego do kilku różnych programów NeuroCheck, np. ocena obecności pojedynczej śruby z otworem wymaga wykonania trzech różnych programów, a końcowa ocena jest sumą logiczną rezultatów każdego z nich. W przypadku stanowiska dla firmy Eaton każda odmiana skrzyni biegów, z punktu widzenia technicz-
73
Rozwiązania programowe w sterowaniu zaawansowanymi aplikacjami wizyjnymi odczytanymi przez system wizyjny z różnych części kontrolowanego wyrobu. Każdy pojedynczy wiersz pliku konfiguracyjnego raportu odpowiada pojedynczemu wierszowi wstawianemu do raportu końcowego. Dodatkowo każdemu wierszowi z pliku konfiguracyjnego aplikacja przyporządkowuje pojedynczą zmienną logiczną. O tym, czy zmiennej tej zostanie przyporządkowana wartość OK czy Not OK decyduje instrukcja, której mnemonik rozpoczyna wiersz. Globalny rezultat kontroli wizyjnej jest wyznaczany jako iloczyn logiczny zmiennych przyporządkowanych do każdej linii pliku konfiguracyjnego. Przyjmuje się ponadto, że jeśli dana instrukcja pliku konfiguracyjnego nie generuje wyniku logicznego (np. instrukcje nakazujące wstawienie do raportu informacji o dacie i czasie kontroli wizyjnej) to za wynik logiczny tej instrukcji przyjmuje się wartość OK. Dodatkowo wprowadzono kilka ograniczeń na format tego pliku: −−każdy wiersz pliku konfiguracyjnego musi rozpoczynać się mnemonikiem instrukcji. Nie można używać tzw. pustych znaków (spacje, znaki tabulacji) przed samą instrukcją oraz wewnątrz niej (np. do oddzielenia poszczególnych parametrów), −−po ostatnim parametrze instrukcji można umieścić dodatkowy tekst jako komentarz, ale tekst ten musi rozpoczynać się i kończyć znakiem pojedynczego apostrofu ’. Wewnątrz tego tekstu można stosować znaki spacji, −−parametry instrukcji mogą odpowiadać tylko tym programom kontroli wizyjnej, które wymieniono w kolumnie Kolejnosc wykonywania kontroli wizyjnych tabeli DanePrób1, −−plik konfiguracyjny nie może zawierać więcej niż 120 wierszy. Format pliku konfiguracyjnego jest rygorystycznie sprawdzany po wykonaniu weryfikacji informacji odczytanej z bazy danych DaneDlaKontroliWizyjnych.mdb, a przed rozpoczęciem kontroli wizyjnych, a komentarze o wykrytych nieprawidłowościach dopisywane do pliku Diagnostic.txt. Poniżej opisano instrukcje, które można umieszczać w pliku konfiguracyjnym raportu.
Rys. 2. Widok dwóch formularzy do wprowadzania i edycji informacji do bazy danych dla kontroli wizyjnych Fig. 2.View of two forms for introduction and edit informationto database for vision controls
6.5.1. Informacja o odmianie skrzyni biegów
Format instrukcji: &# Wstawienie do raportu końcowego informacji o odmianie skrzyni biegów.
6.5.2. Informacja o numerze montażowym skrzyni biegów
Format instrukcji: &@ Wstawienie do raportu końcowego informacji o numerze montażowym (Assembly No) skrzyni biegów.
Rys. 3. Okno przeglądania błędów w bazie danych lub/i w pliku konfiguracyjnym raportu Fig. 3: Window to view the errors in the database and / or in the configuration file of the report
6.5.3. Informacja o numerze seryjnym skrzyni biegów
Format instrukcji: &$ Wstawienie do raportu końcowego informacji o numerze seryjnym (Trans No) skrzyni biegów.
nej realizacji kontroli i oceny jej wyników, różni się od pozostałych. Dlatego projektując schemat aplikacji przyjęto rozwiązanie, w którym każdemu wyrobowi (każdej odmianie skrzyni biegów) przyporządkowany jest inny algorytm globalnej oceny wszystkich wykonanych kontroli i tworzenia raportu końcowego. Definicja tego algorytmu, zawarta w dodatkowym pliku tekstowym, jest rodzajem programu realizowanym przez aplikację nadrzędną po zakończeniu kontroli wizyjnej. Informacje o położeniu i nazwie tego pliku tekstowego zawiera pole Plik konfiguracyjny raportu tabeli DaneProb1 bazy danych. Aplikacja komputera wizyjnego umożliwia wykonanie do 52 różnych programów kontroli wizyjnej oznaczonych literami A–Z i a–z. W tabeli DanePrób1 zdefiniowano też 10 pól, w których do każdego wyrobu można przyporządkować 10 różnych tekstów wzorcowych, oznaczonych cyframi 0–9. Podczas wprowadzania danych wyrobu przed rozpoczęciem kontroli wizyjnej, oprócz jego identyfikatora (odmiany skrzyni biegów), operator może wprowadzić ciąg znaków określających numer montażowy i numer seryjny wyrobu. Teksty te mogą być porównywane z tekstami
74
P
O
M
I
A
R
Y
•
A
U
T
O
M
6.5.4. Informacja o tekście wzorcowym odczytanym z bazy danych
Format instrukcji: &X gdzie X oznacza jedną z cyfr 0–9. Wstawienie do raportu końcowego informacji o tekście wzorcowym oznaczonym wybraną cyfrą.
6.5.5. Informacja o dacie wykonania kontroli wizyjnej
Format instrukcji: &D Wstawienie do raportu końcowego informacji o dacie wykonania kontroli wizyjnej w formacie „dzień-miesiąc-rok”.
6.5.6. Informacja o czasie wykonania kontroli wizyjnej
Format instrukcji: &C Wstawienie do raportu końcowego informacji o czasie wykonania kontroli wizyjnej w formacie „godzina:minuta:sekunda”. A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Jacek Dunaj
6.5.7. Informacja o katalogu zawierającym zdjęcia sprawdzanych elementów
Format instrukcji: &I Wstawienie do raportu końcowego informacji o katalogu, w którym zapisano zdjęcia kontrolowanych elementów wykonane podczas realizacji programów wizyjnych.
6.5.8. Informacja o liczbie programów kontroli wizyjnej
Format instrukcji: &L Wstawienie do raportu końcowego informacji o liczbie programów kontroli wizyjnej realizowanych podczas sprawdzania wyrobu.
6.5.9. Wstawienie do raportu końcowego komentarza tekstowego
Format instrukcji: ’....’ Wstawienie komentarza zdefiniowanego między znakami apostrofów. Użycie komentarza można zrealizować w wierszu zawierającym inną instrukcję – bezpośrednio po parametrach tej instrukcji. Tekst ten zostanie wstawiony do wiersza raportu przed informacją generowaną przez samą instrukcję, np.: &D’Data kontroli: _ _’ &T’_ Godzina kontroli: ’ do raportu końcowego zostanie wstawiona następująca informacja (dodatkowe spacje umożliwiają formatowanie tekstu): Data kontroli: _ _ _29-KWI-2015 _ Godzina kontroli: 12:22:31 Dodatkowe znaki, umieszczone po apostrofie zamykającym dodatkowy tekst, ale przed znakiem nowej linii (0×0A) lub powrotu karetki (0×0D) wyznaczającym w pliku tekstowym koniec wiersza, są przez aplikację odrzucane i mogą być traktowane jako komentarz umieszczany w pliku konfiguracyjnym raportu.
6.5.10. Informacja o wyniku wykonania pojedynczego programu kontroli wizyjnej
Format instrukcji: -X, gdzie X może być literą A–Z lub a–z. Wstawienie do raportu końcowego informacji o wyniku wykonania pojedynczego programu kontroli wizyjnej wymienionego jako parametr instrukcji. Parametr X określa dowolny program A–Z lub a–z. Informacja wpisywana do raportu końcowego zależy od kategorii programu wizyjnego, którego dotyczy instrukcja: 1. Jeśli jest to program z kategorii programów wizyjnych sprawdzających obecność lub prawidłowość zamocowania pojedynczego detalu, to do raportu końcowego może zostać wstawiony jeden z dwóch komunikatów: −−gdy program wizyjny jako wynik logiczny zwrócił wartość Check OK: Wynik: OK −−gdy program wizyjny jako wynik logiczny zwrócił wartość Check Not OK: Wynik: Not OK 2. Jeśli jest to program z kategorii programów wizyjnych identyfikujących napisy, to do raportu końcowego może zostać wstawiony jeden z pięciu komunikatów. W każdym z nich przyjęto oznaczenia: X – liczba znaków zidentyfikowanych przez program, Y – liczba znaków, które program miał zidentyfikować (informacja z bazy danych), ’xxx’– znaki zidentyfikowane przez program; −−jeśli liczby X i Y są jednakowe i program wizyjny jako wynik logiczny zwrócił wartość Check OK (potwierdzenie, że prawdopodobieństwo poprawnej identyfikacji jest powyżej progu ustalonego w tym programie): X na Y znaków: ’xxx’ Wynik: OK −−jeśli liczby X i Y są różne i program wizyjny jako wynik logiczny zwrócił wartość Check OK (potwierdzenie, że prawdopodobieństwo poprawnej identyfikacji jest powyżej progu ustalonego w programie): X na Y znaków: ’xxx’ Błąd: Różna liczba znaków.
−−jeśli liczby X i Y są jednakowe i program wizyjny jako wynik logiczny zwrócił wartość Check Not OK (prawdopodobieństwo poprawnej identyfikacji znaku(ów) jest poniżej progu ustalonego w programie): X na Y znaków: ’xxx’ Błąd: Identyfikacja. −−jeśli liczby X i Y są różne i program wizyjny jako wynik logiczny zwrócił wartość Check Not OK (prawdopodobieństwo poprawnej identyfikacji znaku(ów) jest poniżej progu ustalonego w programie): X na Y znaków: ’xxx’ Błąd: Identyfikacja, różna liczba znaków. −−jeśli aplikacja nadrzędna na podstawie analizy odwołania do programu wizyjnego stwierdziła, że jego format nie odpowiada formatowi programu z kategorii programów wykonujących identyfikację napisów: X na Y znaków: ’xxx’ Błąd: Format programu. 3. Jeśli jest to program z kategorii obejmującej programy wykonujące pomiary wizyjne, to do raportu końcowego może zostać wstawiony jeden z czerech komunikatów. W każdym z nich przyjęto oznaczenia: x.xxx – liczba rzeczywista oznaczająca wynik pomiaru. −−jeśli program wizyjny jako wynik logiczny zwrócił wartość Check OK to oznacza, że wartość x.xxx pomiaru mieści się w granicach tolerancji określonych w programie: x.xxx Wynik: OK −−jeśli program wizyjny jako wynik logiczny zwrócił wartość Check Not OK to oznacza, że wartość x.xxx pomiaru jest różna od 0.0, ale nie mieści się w granicach tolerancji określonych w programie: x.xxx Błąd: Poza granicami tolerancji. −−jeśli program wizyjny jako wynik logiczny zwrócił wartość Check Not OK lub wynik pomiaru wynosi 0.0 to oznacza, że program wizyjny nie mógł zidentyfikować obiektu (fizyczny brak obiektu, problem z właściwym pozycjonowaniem skrzyni/kamery, problem z oświetleniem itp.): x.xxx Błąd: Brak obiektu. −−jeśli aplikacja nadrzędna po analizie odwołania do programu wizyjnego stwierdziła, że jego format nie odpowiada formatowi programu należącego do kategorii programów wykonujących pomiary wizyjne: x.xxx Błąd: Format programu.
6.5.11. Informacja o iloczynie logicznym rezultatów wykonania kilku programów kontroli wizyjnej
Format instrukcji: *X…Y, gdzie X…Y mogą być literami A–Z lub a–z. Wstawienie do raportu końcowego informacji o iloczynie logicznym wyników wykonania programów wizyjnych wymienionych jako parametry tej instrukcji. Parametry X, …, Y określają dowolne programy A–Z lub a–z. Instrukcja ta ma ograniczenia: −−może zawierać od 1 do 52 parametrów, −−ponieważ realizuje proste działanie logiczne, nie ma żadnych ograniczeń do typów programów wizyjnych wymienionych jako parametry, −−jeśli instrukcji przyporządkowano tylko jeden parametr, to wynikiem działania jest rezultat logiczny programu wizyjnego, który odpowiada temu parametrowi, −−lista parametrów może zawierać elementy powtarzające się. Do raportu końcowego może zostać wstawiony jeden z dwóch komunikatów: −−jeśli wszytkie programy wizyjne wymienione jako paramery instrukcji zwróciły wartości Check OK: Wynik: OK −−jeśli co najmniej jeden program wizyjny z programów wymienionych jako paramery instrukcji zwrócił wartość Check Not OK: Wynik: Not OK
75
Rozwiązania programowe w sterowaniu zaawansowanymi aplikacjami wizyjnymi
6.5.12. Informacja o sumie logicznej rezultatów wykonania kilku programów kontroli wizyjnej
−−jeśli wyniki logiczne związane z analizami napisów obu obiektów wymienionych jako parametry instrukcji mają wartość OK i napisy są jednakowe: Brak różnic, Wynik OK −−jeśli wyniki logiczne związane z analizami napisów obu obiektów wymienionych jako parametry instrukcji mają wartość OK i napisy są różne: Są różnice, Wynik Not OK −−jeśli wyniki logiczne związane z analizami napisów obu obiektów wymienionych jako parametry instrukcji mają wartość Not OK (napisy nie są już porównywane): Napisy: Not OK, Wynik Not OK −−jeśli wynik logiczny związany z analizą napisu obiektu wymienionego jako pierwszy parametr instrukcji ma wartość Not OK (napisy nie są już porównywane): Napis 1 Not OK, Wynik Not OK −−jeśli wynik logiczny związany z analizą napisu obiektu wymienionego jako drugi parametr instrukcji ma wartość Not OK (napisy nie są już porównywane): Napis 2 Not OK, Wynik Not OK −−jeśli oba porównywane napisy mają zerową długość: Brak obu napisów, Wynik Not OK −−jeśli napis odpowiadający obiektowi wymienionemu jako pierwszy parametr instrukcji ma zerową długość: Brak napisu 1, Wynik Not OK −−jeśli napis odpowiadający obiektowi wymienionemu jako drugi parametr instrukcji ma zerową długość: Brak napisu 2, Wynik Not OK
Format instrukcji: +X...Y, gdzie X…Y mogą być literami A–Z lub a–z. Wstawienie do raportu końcowego informacji o sumie logicznej wyników wykonania programów wizyjnych wymienionych jako parametry tej instrukcji. Parametry X, …, Y określają dowolne programy A–Z lub a–z. Instrukcja ta ma ograniczenia: −−może zawierać od 1 do 52 parametrów, −−ponieważ realizuje proste działanie logiczne, nie ma żadnych ograniczeń do typów programów wizyjnych wymienionych jako jej parametry, −−jeśli instrukcji przyporządkowano tylko jeden parametr, to wynikiem działania jest rezultat logiczny programu wizyjnego, który odpowiada temu parametrowi, −−lista parametrów może zawierać elementy powtarzające się. Do raportu końcowego może zostać wstawiony jeden z dwóch komunikatów: −−jeśli co najmniej jeden program wizyjny z programów wymienionych jako paramery instrukcji zwrócił wartość Check OK: Wynik: OK −−jeśli wszytkie programy wizyjne wymienione jako paramery instrukcji zwróciły wartości Check Not OK: Wynik: Not OK
6.5.13. Informacja o wyniku porównania dwóch tekstów
Format instrukcji: =XY, gdzie XY mogą być literami A–Z i a–z, cyframi z zakresu 0–9 lub jednym ze znaków: #, @, $. Wstawienie do raportu końcowego informacji o wyniku porównania dwóch napisów odczytanych przez dwa programy kontroli wizyjnej X i Y. Parametry X i Y określają dowolne programy A–Z i a–z. Dodatkowo do określenia wartości parametru mogą być stosowane znaki: −−cyfry z zakresu 0–9 – porównanie zidentyfikowanego napisu z jednym z dziesięciu tekstów wzorcowych, −−znak # – opisującym odmianę skrzyni biegów (SpecNo), −−znak @ – porównanie z tekstem opisującym numer montażowy skrzyni biegów (AssemblyNo), −−znaku $ – porównanie z tekstem opisującym numer seryjny skrzyni biegów (TransNo). Do raportu końcowego zostanie wstawiona informacja o wyniku logicznym wykonania tej instrukcji (informacja OK lub Not OK). Instrukcja ta ma ograniczenia: −− jest to instrukcja dwuparametrowa (nie można porównywać trzech lub większej liczby napisów), −−każdy z programów wizyjnych wymieniony jako jej parametr musi być programem typu 1, czyli programem identyfikującym napis, −−oba parametry instrukcji mogą być jednakowe (instrukcja wykona porównanie napisu z samym sobą). W opisie komunikatów zamieszczonych poniżej będzie używany termin „wynik logiczny związany z analizą napisu”. Przyjmuje się, że dla tekstów wzorcowych i tekstów wprowadzanych z klawiatury komputera wizyjnego lub za pomocą czytnika kodu kreskowego (odmiana, numer montażowy, numer seryjny) wynik logiczny związany z analizą napisu ma zawsze wartość OK. W przypadku tekstu identyfikowanego programem wizyjnym, wynik logiczny związany z analizą napisu ma wartość OK, jeśli spełnione są dwa warunki: −−program wizyjny zidentyfikował napis z prawdopodobieństwem większym od progu ustalonego w programie (program wizyjny zwrócił logiczną wartość Check OK), −−liczba zidentyfikowanych znaków była równa liczbie znaków, które faktycznie powinny znajdować się na analizowanym elemencie skrzyni biegów (wartość odczytana z odpowiedniego pola bazy danych). Do raportu końcowego może zostać wstawiony jeden z ośmiu komunikatów:
76
P
O
M
I
A
R
Y
•
A
U
T
O
M
6.5.14. Informacja o globalnym rezultacie przeanalizowanych instrukcji kontroli wizyjnych
Format instrukcji: &W Instrukcja ta wstawia do raportu końcowego informację o globalnym wyniku dotychczas przeanalizowanych instrukcji. Aby był to globalny wynik wszystkich instrukcji, musi być umieszczona na końcu pliku konfiguracyjnego raportu.
6.5.15. Przykład pliku konfiguracyjnego raportu ’WYNIK KONTROLI SKRZYNI BIEGÓW’ &D’ Data kontroli: ’ &C’ Godz. kontroli: ’ ’ ’ &#’– odmiana skrzyni biegów: ’ &@’- numer montażowy: ’ &$’– numer seryjny: ’ ’ ’ ’KOMPLETNOŚĆ MONTAŻU ELEMENTÓW:’ ’==============================’ -A’- sprawdzenie obecności tabliczki: ’ -G’- sprawdzenie zaczepu: ’ -N’- sprawdzenie gniazda: ’ +abc’- sprawdzenie obecności otworu: ’ ’ ’ ’POMIARY WIZYJNE:’ ’================’ ’– kąt dźwigni zmiany biegów:’ -L’ Pomiar = ’ ’– średnica wałka napędowego:’ -W’ Pomiar = ’ ’ ’ ’ODCZYTY NAPISÓW ZE SKRZYNI BIEGÓW:’ ’==================================’ ’- odczyt z tabliczki - Odmiana: ’ -B’ ’ ’- odczyt z tabliczki - Customer No:’ -C’ ’ ’- odczyt z tabliczki - ModelNo: ’ -D’ ’ A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Jacek Dunaj ’- odczyt z tabliczki - Nr ser.:’ -E’ ’ ’- odczyt z odlewu - Nr ser.’ -F’ ’ ’- odczyt numeru wałka:’ -S’ ’ ’- nr wałka z bazy danych:’ &0’ ’ ’ ’ ’ANALIZA NAPISÓW ZE SKRZYNI BIEGÓW:’ ’==================================’ ’- porównanie odmiany skrzyni’ ’ wprowadzonej czytnikiem z odmianą’ ’ odczytaną z tabliczki znamionowej:’ =#B’ ’ ’ ’ ’- porównanie nr seryjnego skrzyni’ ’ wprowadzonego czytnikiem z nr seryjnym’ ’ odczytanym z tabliczki znamionowej:’ =$E’ ’ ’ ’ ’- porównanie nr seryjnego skrzyni’ ’ wprowadzonego czytnikiem z nr seryjnym’ ’ odczytanym z odlewu korpusu:’ =$F’ ’ ’ ’ ’- porównanie nr wałka odczytanym kamerą’ ’ z nr wałka z bazy danych:’ =0S’ ’
6.5.16. Przykład końcowej postaci raportu WYNIK KONTROLI SKRZYNI BIEGÓW Data kontroli: 10-Lut-2015 Godz. kontroli: 12:52:31
– odmiana skrzyni biegów: ZY06365 - numer montażowy: 546843 – numer seryjny: TC261691 KOMPLETNOŚĆ MONTAŻU ELEMENTÓW: ============================== - sprawdzenie obecności tabliczki: - sprawdzenie zaczepu: - sprawdzenie gniazda: - sprawdzenie obecności otworu:
Wynik: Wynik: Wynik: Wynik:
OK OK Not OK OK
POMIARY WIZYJNE: ================ - kąt dźwigni zmiany biegów: Pomiar = 22.49 Wynik: OK - średnica wałka napędowego: Pomiar = 56.17 Błąd: Poza granicami tolerancji. ODCZYTY NAPISÓW ZE SKRZYNI BIEGÓW: ================================== - odczyt z tabliczki - Odmiana:’ 7 na 7 znaków: ’ZY06365’ Wynik: OK ’ - odczyt z tabliczki - Customer No:’ 10 na 10 znaków: ’5010545195’ Wynik: OK - odczyt z tabliczki - ModelNo: ’ 9 na 9 znaków: ’FS/6309AV’ Wynik: OK - odczyt z tabliczki - Nr ser.: ’ 8 na 8 znaków: ’TC261691’ Wynik: OK ’ - odczyt z odlewu - Nr ser. ’ 8 na 8 znaków: ’TC261691’ Wynik: OK - odczyt numeru wałka: ’ 7 na 7 znaków: ’8880788’ Wynik: OK - nr wałka z bazy danych:’ 8880788 ANALIZA NAPISÓW ZE SKRZYNI BIEGÓW: ================================== - porównanie odmiany skrzyni
wprowadzonej czytnikiem z odmianą odczytaną z tabliczki znamionowej: Brak różnic, Wynik OK - porównanie nr seryjnego skrzyni wprowadzonego czytnikiem z nr seryjnym odczytanym z tabliczki znamionowej: Brak różnic, Wynik OK - porównanie nr seryjnego skrzyni wprowadzonego czytnikiem z nr seryjnym odczytanym z odlewu korpusu: Brak różnic, Wynik OK - porównanie nr wałka odczytanym kamerą z nr wałka z bazy danych: Brak różnic, Wynik OK
6.6. Archiwizacja, przeglądanie i wydruk wyników kontroli wizyjnych
Wyniki kontroli wizyjnej wyrobu są archiwizowane, a zakres archiwizacji obejmuje: −−zapis wyników kontroli do bazy danych, −−zapis do plików graficznych w formacie .JPG zdjęć sprawdzanych elementów, −−zapis do pliku tekstowego raportu końcowego z przeprowadzonych prób wizyjnych. Zapis wyników kontroli do bazy danych i do raportu końcowego jest realizowany po wykonaniu wszystkich programów wizyjnych przewidywanych dla danego wyrobu. Zapis zdjęć sprawdzanych elementów do plików graficznych ma miejsce po zakończeniu wykonywania pojedynczego programu wizyjnego. Pliki graficzne i raport końcowy są zapisywane w podkatalogach utworzonych w folderze, np.: d:\WynikiProb Nazwa podkatalogu zostaje utworzona na podstawie odczytu kalendarza i zegara komputera wizyjnego, przy wykorzystaniu mechanizmu tworzenia długich nazw dostępnych w systemie Windows. Pełna nazwa podkatalogu ma następujący format: d:\WynikiProb\rrrr-mm-dd_hh-mm-ss przy czym wszytkie fragmenty nazwy, które wyszczególniono kursywą są zmienną częścią tej nazwy i kolejno określają: rok (rrrr), miesiąc (mm), dzień (dd), godzinę (hh), minutę (mm) i sekundę (ss). Odczyt zegara systemowego, na podstawie którego generowana jest nazwa podkatalogu następuje w chwili rozpoczęcia kontroli wizyjnej wyrobu.
6.6.1. Rejestrowanie wyników kontroli wizyjnej do bazy danych
Bazę danych, w której zapisywane są wyniki kontroli wizyjnych sprawdzanych wyrobów utworzono w formacie Access 2000 i zapisano w pliku: WynikiKontroliWizyjnych.mdb Analogicznie jak w przypadku bazy danych z informacjami dla kontroli wizyjnych dostęp do bazy wyników aplikacja uzyskuje korzystając ze sterowników ODBC. Sama baza zawiera pojedynczą tabelę: WynikiProb W tej bazie rejestrowane są następujące dane: −−odmiana, numer montażowy i numer seryjny wyrobu (skrzyni biegów). Są to dane wprowadzone przez operatora stanowiska za pomocą czytnika kodu kreskowego lub klawiatury komputera przed rozpoczęciem kontroli wizyjnej, −−informacja o dokładnym czasie (data, godzina, minuta, sekunda) określającym moment, w którym rozpoczęto wykonywanie kontroli wizyjnej (gdy operator stanowiska potwierdził wyjście ze strefy chronionej). Czas ten jest odczytywany z zegara komputera wizyjnego, −−informacja o miejscu (urządzenie i katalog), gdzie zapisano plik raportu i pliki graficzne ze zdjęciami skontrolowanych elementów, −−globalny wynik kontroli wizyjnej wyrobu, −−wyniki wykonanych programów kontroli wizyjnych.
77
Rozwiązania programowe w sterowaniu zaawansowanymi aplikacjami wizyjnymi W bazie danych nie są rejestrowane wyniki kontroli wizyjnych poszczególnych elementów, ale logiczne rezultaty zrealizowanych programów wizyjnych. Wynika to z faktu, że wynik kontroli elementu może być efektem wykonania kilku programów i trudno byłoby wprowadzić jedną uniwersalną strukturę danych odpowiednią dla każdego wyrobu. Tabela WynikiProb zawiera 52 kolumny oznaczone literami A–Z i a–z: „Wynik proby A”, ... , „Wynik proby Z” „Wynik proby a”, ... , „Wynik proby z” w których zapisywane są wyniki wykonania programów wskazanych w polach bazy danych DaneDlaKontroliWizyjnych.mdb: „A Nazwa programu”, ... , „Z Nazwa programu” „a Nazwa programu”, ... , „z Nazwa programu” Wartość wpisywana do każdego z pól może przyjmować wartości: −−+1 – program wizyjny zwrócił wartość Check OK, −−0 – program wizyjny nie został wykonany, ponieważ nie było go na liście programów do wykonania (jego symbolu nie wymieniono w polu identyfikującym kolejność wykonywania kontroli wizyjnych bazy danych DaneDlaKontroliWizyjnych. mdb) −−–1 – program wizyjny zwrócił wartość Check Not OK.
ferencjami wydruku ustawionymi dla tej drukarki. Samą formę wydruku tzn. czcionkę, odległości między wierszami, wielkości marginesów etc. można indywidualnie ustalać dla każdego wyrobu i są one pamiętane w bazie danych z informacjami dla kontroli wizyjnych. Aplikacja nadrzędna nie ma funkcji podglądu wydruku, m.in. ze względu na zbyt skomplikowaną obsługę tej funkcji w warunkach przemysłowych. W związku z tym weryfikacja preferencji wydruku oraz prawidłowego doboru czcionki, wymiarów ramki i okna następuje dopiero podczas tworzenia obrazu strony bezpośrednio przed skierowaniem go na drukarkę.
6.7. Sterowanie robotem przez komputer wizyjny
W przypadku stanowiska dla firmy Eaton różnorodność typów skrzyń biegów i rozmieszczenie sprawdzanych elementów stanowiły problem podczas projektowania uniwersalnego systemu wielokamerowego do kontroli wizyjnej wszystkich skrzyń. Dlatego najkorzystniejszym rozwiązaniem było zastosowanie robota przemysłowego z pojedynczą kamerą zamontowaną na jego manipulatorze. Narzuciło ono konieczność opracowania sposobu sterowania robotem z poziomu aplikacji nadrzędnej. Jedną z rozważanych koncepcji sterowania było zadawanie współrzędnych kolejnych punktów pomiarowych za pomocą przesyłek z komputera wizyjnego do robota przez interfejs RS-232 lub sieć Ethernet. W uproszczeniu, program robota składałby się z pojedynczej pętli programowej, w której prowadzony byłby nasłuch kanału transmisyjnego. Po odbiorze przesyłki ze współrzędnymi punktu – manipulator realizowałby ruch do tego punktu. Zbiory ze współrzędnymi wszystkich punktów kontrolnych dla każdej skrzyni biegów byłyby przechowywane w pamięci komputera wizyjnego w postaci plików tekstowych, arkuszy kalkulacyjnych lub w bazie danych. W rozwiązaniu tym byłby tylko jeden, prosty program robota, możliwy do zastosowania w przypadku każdej skrzyni biegów. Definiowanie współrzędnych punktów polegałoby na ręcznym przemieszczaniu manipulatora robota, odczycie jego położenia, a następnie manualnym wprowadzeniu odczytanej informacji do pamięci komputera wizyjnego. Rozwiązanie to zostało jednak zarzucone ze względu na potencjalne trudności, jakich spodziewano się przy niezbędnych korekcjach położeń niektórych punktów. Pomysł sterowania ruchem robota za pomocą przesyłek ze współrzędnymi punktów docelowych wykorzystano w PIAP przy realizacji innych aplikacji wizyjnych. W 2013 r. wykonano model linii technologicznej z robotem ABB IRb-140 dla Politechniki Poznańskiej [6], a w 2014 r. stanowisko demonstracyjne z robotem Kuka KR16 na Targi Automaticon 2014 [7]. W obu przypadkach realizowanym zadaniem była identyfikacja położenia elementu na palecie i podjęcie go chwytakiem robota. Rozpoznanie położenia i sterowanie robotem realizowały kamery inteligentne firmy Sick (stanowisko dla Politechniki) i firmy Cognex (stanowisko targowe).
6.6.2. Rejestrowanie do plików graficznych zdjęć sprawdzanych elementów
Jednym z ciekawszych zadań postawionych przed wykonawcami stanowiska wizyjnego dla firmy Eaton była rejestracja zdjęć sprawdzanych elementów. Mechanizm wykonywania tej rejestracji wykorzystuje makroinstrukcję Transfer Image, która obligatoryjnie zawsze występuje w każdym programie kontroli wizyjnej realizowanym przez NeuroCheck. Aby umożliwić rejestrację do pliku .bmp należy w każdym programie wizyjnym odpowiednio skonfigurować wyjścia (output) tej makroinstrukcji, ustalając nazwę katalogu (np. d:\WynikiProb) oraz przedrostek nazwy pliku (np. Photo), w którym będą zapisywane obrazy. Rejestracja zdjęcia do pliku graficznego ma miejsce bezpośrednio po zrealizowaniu każdego pojedynczego programu wizyjnego i odbywa się w następujący sposób: −−pakiet oprogramowania NeuroCheck wykonując instrukcję Transfer Image programu wizyjnego rejestruje do pliku o nazwie d:\WynikiProb\Photo001.bmp zdjęcie elementu. Zarejestrowane zdjęcie nie odpowiada jednak pełnemu obrazowi uzyskanemu z kamery, lecz jego fragmentowi określonemu podczas parametryzacji instrukcji Transfer Image, −−aplikacja nadrzędna odczytuje utworzoną bitmapę, poddaje ją konwersji na format .jpg i zapisuje pod nazwą utworzoną na podstawie atrybutu programu wizyjnego o nazwie Opis programu. Po wykonaniu konwersji źródłowy plik .bmp zostaje usunięty. Konwersja z formatu .bmp na format .jpg jest konieczna ze względu na duży rozmiar plików .bmp. Do konwersji zastosowano procedury biblioteczne [14], a prawa licencyjne do ich komercyjnego wykorzystania zakupiono od jednego z autorów książki.
6.6.3. Tworzonenie, przeglądanie i wydruk raportu końcowego
Po zakończeniu kontroli wizyjnej wyrobu, zgodnie z algorytmem zdefiniowanym w pliku konfiguracyjnym raportu, powstaje raport końcowy. Jest on zapisywany pod nazwą Raport.txt w tym samym podkatalogu, co pliki graficzne ze zdjęciami elementów. W trakcie tworzenia raportu końcowego wyznaczany jest globalny wynik kontroli całego wyrobu (OK lub Not OK). Raport końcowy jest wyświetlany w jednym z okien dialogowych aplikacji (rys. 4). Na zielono podświetlane są zadania, które zakończyły się wynikiem OK, a na czerwono – wynikiem Not OK. Raport jest plikim tekstowym, nie zawiera dodatkowych informacji o drukarce, wymiarach papieru i czcionce. Wydruk jest wykonywany na domyślnej drukarce systemu Windows z pre-
78
P
O
M
I
A
R
Y
•
A
U
T
O
M
Rys. 4. Okno przeglądania raportu utworzonego na podstawie pliku konfiguracyjnego Fig. 4. Window to view the report based on the configuration file
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Jacek Dunaj W przypadku stanowiska dla firmy Eaton z robotem ABB IRb1400, wybrano tradycyjne rozwiązanie. Aplikacja robota, w dalszej części określana jako program główny, zawiera instrukcje komunikacji łączem RS-232 z komputerem wizyjnym. Oprócz programu głównego, w pamięci komputera sterującego robotem znajduje się szereg plików, każdy z podprogramem obsługującym kontrolę wizyjną innej skrzyni biegów. W podprogramach tych zdefiniowano współrzędne punktów pomiarowych jako parametry odpowiednich instrukcji ruchu, a więc można je łatwo korygować przy pomocy funkcji uczenia, dostępnej w oprogramowaniu systemowym robota. Aplikacja komputera wizyjnego przesyła interfejsem RS-232 informację o ścieżce dostępu do pliku z podprogramem robota właściwym do obsługi kontroli wybranej skrzyni biegów. Informacja ta jest odczytywana z bazy danych. Program główny robota zawiera instrukcję pozwalającą wywołać dowolny podprogram zdefiniowany w pliku, do którego ścieżkę dostępu określa parametr tej instrukcji. Uruchomiony podprogram steruje ruchem manipulatora podczas kontroli wizyjnej wybranej skrzyni. Sekwencja przemieszczania manipulatora musi być zsynchronizowana z sekwencją wykonywania kolejnych programów wizyjnych. Po zakończeniu kontroli sterowanie robotem zostaje przekazane z podprogramu do jego programu głównego. Podobne rozwiązanie, z podziałem na program główny robota i podprogramy do kontroli różnych wyrobów, zastosowano w stanowisku demonstracyjnym PIAP prezentowanym na kilku targach branżowych. Urządzeniem przemieszczającym kamerę był robot firmy Kuka, co z góry determinowało sposób wyboru podprogramu obsługi kontroli wizyjnej danego wyrobu. W przypadku robotów firmy Kuka zdalny wybór podprogramów wykonywany jest za pomocą sygnałów dwustanowych z komputera wizyjnego do robota. Jest to realizowane w następujący sposób: Sterownik robota ma w pamięci plik o nazwie: c: \ KRC \ ROBOTER \ KRC \ R1 \ cell.scr Jest to „szkielet” programu dostarczany przez firmę Kuka, zawierający m.in. instrukcje odczytu WE dwustanowych zadeklarowanych jako wejścia wyboru aplikacji robota. Program cell. src należy więc uzupełnić o instukcje wywołujące podprogramy obsługi kontroli wizyjnych w zależności od kombinacji sygnałów wejściowych. W przypadku robota Kuka w bazie danych z informacjami dla kontroli wizyjnych zamiast położenia i nazwy pliku z właściwym podprogramem robota należy umieścić kombinację sygnałów dwustanowych służących do wyboru takiego podprogramu.
6.7.1. Używane terminy
Aby szczegółowo wyjaśnić sposób sterowania robotem przez aplikację komputera podczas wykonywania kontroli wizyjnych złożonych wyrobów należy sprecyzować znaczenie kilku użytych terminów. Przedstawiony w tym i następnym podrozdziale opis dotyczy robota ABB użytego w aplikacji wykonanej dla firmy Eaton. Bezpieczne położenie manipulatora. Oprogramowanie systemowe robota umożliwia zdefiniowanie tzw. strefy bezpiecznej. Strefa bezpieczna jest fragmentem przestrzeni roboczej manipulatora z wyłączeniem walca zdefiniowanego względem jego podstawy. W przypadku, gdy narzędzie robota wyjdzie poza przestrzeń tego walca zakłada się, że przebywa ono w strefie bezpiecznej. Informację o położeniu narzędzia w stosunku do strefy bezpiecznej oprogramowanie systemowe robota może wydawać sterując sygnałem na wybranym wyjściu dwustanowym (działanie niezależnie od aplikacji). W przypadku opisywanej aplikacji sygnałem tym jest dwustanowy sygnał SAFE_ROBOT_POSITION. Robocze położenie manipulatora. Położenie manipulatora, w którym aplikacja nadrzędna komputera realizuje kontrolę wizyjną pojedynczego elementu lub ruch stołu obrotowego. Przebywanie w położeniu roboczym oprogramowanie robota potwierdza utrzymując wysoki stan („1”) na wyjściu dwustanowym ROBOT_IN_POSITION. Obrót stołu można realizować, jeśli
robocze położenie manipulatora jest jednocześnie położeniem bezpiecznym (sygnał SAFE_ROBOT_POSITION=1). START_PROGRAMU_GLOWNEGO_ROBOTA. Sygnał dwustanowy z komputera do robota podłączony do jego wejścia systemowego „StartMain”. Sygnał ten (po uprzednim zatrzymaniu programu) powoduje wystartowanie od pierwszej instrukcji programu głównego robota. Aby uruchomić ten program, aplikacja nadrzędna komputera wizyjnego ustawia na tym wyjściu „1” i utrzymuje ten stan aż do momentu uzyskania potwierdzenia (tzn. „1”) na wejściu ROBOT_ PROGRAM_ RUNNING. KONTYNUACJA_PROGRAMU_ROBOTA. Sygnał dwustanowy z komputera do robota podłączony do jego wejścia systemowego Start. W trakcie realizacji kontroli wizyjnych program robotowy może być zatrzymany przez stop awaryjny lub naruszenie kurtyny ochronnej. W pierwszym przypadku aplikacja nadrzędna zakończy kontrolę, w drugim przypadku będzie można kontytuować program robotowy od instrukcji, na której został zatrzymany. Tak więc, po uzyskaniu potwierdzenia przez operatora, np. przy pomocy odpowiedniego przycisku umieszczonym na panelu stanowiska aplikacja nadrzędna ustawia na tym wyjściu „1” i utrzymuje ten stan aż do momentu uzyskania potwierdzenia (tzn. „1”) na wejściu ROBOT_ PROGRAM_ RUNNING. STOP_PROGRAMU_ROBOTA. Sygnał dwustanowy z komputera wizyjnego do robota podłączony do jego wejścia systemowego „STOP PROGRAMU”. Jest on wysterowywany („1”) w dwóch przypadkach: po zakończeniu wykonywania wszystkich kontroli wizyjnych dla danego wyrobu i uzyskaniu potwierdzenia, że robot znajduje się w pozycji bezpiecznej, w trakcie wykonywania kontroli wizyjnej – po naruszeniu kurtyn ochronnych. W obu przypadkach stan „1” jest utrzymywany do momentu uzyskania potwierdzenia (tzn. „0”) na wejściu ROBOT_ PROGRAM_ RUNNING. KOMPUTER_OK. Sygnał dwustanowy z komputera wizyjnego do robota, utrzymywany w stanie „1” podczas wykonywania kontroli wizyjnych. Jeśli aplikacja nadrzędna zmieni go na „0” to oznacza, że podprogram obsługi wybranego wyrobu powinien przemieścić manipulator robota do pozycji wyjściowej, ustawić wartość „0” sygnału ROBOT_APPLICATION_RUNNING i przekazać sterowanie do programu głównego robota. Nie jest tutaj konieczne wysterowywanie innych sygnałów dwustanowych, ponieważ dla aplikacji nadrzędnej potwierdzeniem jest wyłączenie sygnału ROBOT_APPLICATION_RUNNING. Przedwczesne przerwanie kontroli wizyjnej danego wyrobu może nastąpić w dwóch przypadkach: −−jeśli zostanie ona ręcznie przerwana przez operatora stanowiska (jest taka opcja w programie aplikacyjnym komputera wizyjnego), −−jeśli w trakcie automatycznego wykonywania kontroli wizyjnych zostanie wykryty błąd uniemożliwiający ich dalsze kontynuowanie (błąd zapisu do pliku, niewłaściwy format programu NeuroChecka, etc.). START_MOVING. Sygnał dwustanowy z komputera wizyjnego do robota, którego wartość „1” ma wymusić na podprogramie obsługi wybranego wyrobu przemieszczenie manipulatora do kolejnej pozycji, w której będzie wykonywana kontrola wizyjna lub zmiana pozycji stołu obrotowego. Wartość „1” jest utrzymywana do momentu, aż program obsługi wybranego wyrobu ustawi „0” na wyjściu „ROBOT_IN_ POSITION”(jest to potwierdzenie przyjęcia rozkazu ruchu). Na sygnał ten ma reagować tylko podprogram obsługi wybranego wyrobu, program główny robota ma go ignorować. W momencie zarejestrowania „1” na wejściu „START_MOVING” podprogram obsługi wybranego wyrobu powinien ustawić „0” na wyjściu „ROBOT_IN_POSITION”, przemieścić manipulator do następnego punktu roboczego, a następnie wysterować („1”) to wyjście. Przez punkt roboczy rozumie się położenie manipulatora, w którym ma być wykonywana kontrola wizyjna lub przemieszczenie stołu obrotowego. W tym rozumieniu punktem roboczym
79
Rozwiązania programowe w sterowaniu zaawansowanymi aplikacjami wizyjnymi nie są żadne punkty pośrednie, przez które przemieszcza się manipulator robota. ROBOT_PROGRAM_RUNNING. Sygnał dwustanowy z robota do komputera oznaczający („1”), że został uruchomiony program aplikacyjny robota. Jest to sygnał systemowy robota, tzn. za jego sterowanie odpowiada nie program aplikacyjny robota, ale jego system operacyjny (sterowanie tym sygnałem wymusza odpowiednie skonfigurowanie sygnału „CycleOn” w komputerze robotowym). Sygnał ten jest gaszony („0”) w momencie zatrzymania programu robotowego na skutek: −−załączenia stopu awaryjnego, −−zatrzymania programowego przez wysterowanie („1”) sygnału STOP_ PROGRAMU_ ROBOTA. Zatrzymanie wykonywania programu aplikacyjnego robota jest równoznaczne z zatrzymaniem przemieszczania manipulatora. Program aplikacyjny robota można wznowić od jego pierwszej instrukcji (patrz sygnał START_PROGRAMU_GLOWNEGO_ ROBOTA) lub od instrukcji, na której został zatrzymany (patrz sygnał KONTYNUACJA_PROGRAMU_ROBOTA). ROBOT_APPLICATION_RUNNING. Sygnał dwustanowy z robota do komputera określający („1”), że program główny robota przekazał sterowanie do podprogramu obsługi wybranego wyrobu. Sygnał ten jest gaszony („0”) w momencie zakończenia wykonywania programu obsługi wybranego wyrobu. Sterowanie tym sygnałem wykonuje program główny robota. SAFE_ROBOT_POSITION. Sygnał dwustanowy z robota do komputera wizyjnego określający („1”) przebywanie robota w bezpiecznej strefie, tzn. takiej, w której możliwy jest ruch obrotowy stołu. Strefę bezpieczną robota definiuje się podczas konfigurowania robota, a uaktywnia jedną z pierwszych instrukcji programu głównego robota (instrukcja ta może być tylko raz wykonana, inaczej system operacyjny robota zgłosi błąd). Sygnałem tym steruje zatem nie program aplikacyjny robota, ale jego oprogramowanie systemowe. W aplikacji dla firmy Eaton zakłada się, że bezpieczna strefa może (ale nie musi) obejmować także punkty zatrzymania manipulatora, w których wykonywana jest kontrola wizyjna, ale obligatoryjnie obejmuje te punkty, w których ma być wykonywane przemieszczanie stołu obrotowego. Zakłada się ponadto, że w momencie rozpoczynania kontroli wizyjnych manipulator robota musi znajdować się w bezpiecznej strefie, a po zakończeniu kontroli – zostać przemieszczony do tej strefy (punkt wyjściowy robota musi znajdować się w strefie bezpiecznej). ROBOT_IN_POSITION. Sygnał dwustanowy z robota do komputera oznaczający („1”), że manipulator znajduje się w pozycji roboczej, tzn. pozycji, w której możliwe jest wykonanie kontroli wizyjnej lub zmiana położenia stołu obrotowego. Bezpośrednio po odczycie „1” na wejściu „START_MOVING” program obsługi wybranego wyrobu powinien zgasić ten sygnał („0”), przemieścić manipulator do następnej pozycji roboczej a następnie wysterować go („1”). EMERGENCY_STOP. Sygnał dwustanowy z robota (z wyjścia systemowego EmStop) do komputera oznaczający („1” – odwrócona logika) załączenie stopu awaryjnego robota (brak informacji, co spowodowało załączenie stopu awaryjnego). KURTYNA_OCHRONNA. Sygnał dwustanowy z kurtyny ochronnej do komputera wizyjnego. Do momentu rozpoczęcia kontroli wizyjnej jest on ignorowany (na wyjściach z komputera zezwalających na działanie programu robota i obrót stołu są wtedy i tak utrzymywane stany blokujące te działania). W trakcie wykonywania kontroli wizyjnej powoduje zatrzymanie wykonywania programu robotowego i ruch stołu obrotowego. KONTYNUACJA_PROGRAMU. Sygnał dwustanowy do komputera z dodatkowego przycisku zamontowanego na panelu operatorskim stanowiska. Sygnał z tego przycisku jest ignorowany do momentu aż na skutek naruszenia kurtyn ochronnych wykonywanie programu robota zostaje zatrzymane (patrz opis sygnału STOP_PROGRAMU_ROBOTA). Wówczas wznowienie programu od instrukcji, w której nastąpiło zatrzymanie może nastąpić
80
P
O
M
I
A
R
Y
•
A
U
T
O
M
dopiero po wciśnięciu przycisku KONTYNUACJA (patrz także opis sygnału KONTYNUACJA_PROGRAMU_ROBOTA).
6.7.2. Współpraca aplikacja nadrzędna komputera wizyjnego – robot przemysłowy
Stanem wyjściowym do rozpoczęcia wykonywania kontroli wizyjnej jest stan, w którym: −−w pamięci operacyjnej robota znajduje się program główny robota, ale nie jest on uruchomiony (sygnał systemowy ROBOT_PROGRAM_RUNNING = „0”), −−oprogramowanie systemowe robota sygnalizuje, że manipulator przebywa w bezpiecznym położeniu (sygnał systemowy SAFE_ ROBOT_POSITION = „1”, warunek obligatoryjny), −−napędy manipulatora robota pozostają załączone. Sterowanie robotem przez aplikację nadrzędną komputera wizyjnego przebiega w następującym porządku (przejście do następnego kroku algorytmu może nastąpić tylko wtedy, gdy spełnione są warunki określone w danym kroku): 1. Aplikacja nadrzędna komputera wizyjnego załącza („1”) sygnał START_PROGRAMU_ GŁÓWNEGO_ROBOTA i utrzymuje ten stan aż na wejściu ROBOT_PROGRAM_RUNNING pojawi się „1” (oznacza to, że wykonywanie programu aplikacyjnego robota zostało wznowione). Samo oczekiwanie na potwierdzenie trwa nie dłużej niż 5 sekund, a przekroczenie tego czasu skutkuje wyświetleniem komunikatu o błędzie i przerwaniem realizacji kontroli wizyjnych. 2. Aplikacja nadrzędna łączem RS-232 przesyła do układu sterowania robota przesyłkę zawierającą nazwę podprogramu obsługi wybranego wyrobu. Po sprawdzeniu formatu przesyłki i zinterpretowaniu zawartej w niej informacji program główny robota tym samym torem przekazuje do komputera nadrzędnego komunikat potwierdzający jej przyjęcie lub zawierający kod ewentualnego błędu. Brak takiego potwierdzenia w ciągu 15 sekund albo odczytanie informacji o wystąpieniu błędu skutkuje wyświetleniem stosownego komunikatu i przerwaniem realizacji kontroli wizyjnych. 3. Aplikacja nadrzędna przechodzi w stan oczekiwania na potwierdzenie od układu sterowania robota uruchomienia podprogramu obsługi wybranego wyrobu (a ściślej na potwierdzenie przekazania sterowania z programu głównego robota do programu obsługi wybranego wyrobu). Potwierdzenie to polega na ustawieniu przez aplikację robota wartości „1” sygnału ROBOT_ APPLICATION_RUNNING i musi być zrealizowane w czasie nie dłuższym niż 5 sekund. Wartość „1” sygnału ROBOT_ APPLICATION_RUNNING oprogramowanie robota musi utrzymywać przez cały czas pracy podprogramu obsługi wybranego wyrobu, a następnie zgasić („0”) ten sygnał. 4. Aplikacja nadrzędna komputera wizyjnego sprawdza pozycję wyjściową robota. Pozycję tę układ sterowania robota sygnalizuje poprzez utrzymywanie wysokiego („1”) stanu sygnałów SAFE_ROBOT_POSITION i ROBOT_IN_POSITION (z punktu „widzenia” aplikacji nadrzędnej każda pozycja manipulatora, w której oba te sygnały są wysterowane, jest pozycją wyjściową). Ponieważ manipulator robota w momencie rozpoczynania kolejnej kontroli wizyjnej nie musi znajdować się w „rzeczywistej” pozycji wyjściowej, przyjmuje się, że pierwszą instrukcją podprogramu obsługi wybranego wyrobu jest przemieszczenie manipulatora do tego punktu i dopiero wtedy ustawienie „1” na wyjściu ROBOT_IN_POSITION. Musi to nastąpić w czasie nie dłuższym niż 15 sekund. Od tego momentu aplikacja nadrzędna realizuje cykl czynności związanych z przemieszczaniem manipulatora do kolejnych punktów roboczych, w których wykonywane są kontrole wizyjne i zmiany położenia stołu obrotowego. Przebiega to w następującym porządku: 1. Aplikacja nadrzędna ustawia „1” na wyjściu START_MOVING i utrzymuje ten stan do momentu, w którym podprogram obsługi wybranego wyrobu ustawi wartość „0” na wyjściu dwuA
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Jacek Dunaj stanowym ROBOT_IN_POSITION. Oznacza to, że układ sterowania robota zaakceptował i realizuje polecenie przemieszczenia manipulatora do następnego punktu. 2. W momencie zakończenia przemieszczania manipulatora podprogram obsługi wybranego wyrobu ustawia „1” na wyjściu ROBOT_IN_POSITION. Jest to informacja dla aplikacji nadrzędnej o osiągnięciu następnego punktu, w którym możliwa jest realizacja kolejnej kontroli wizyjnej lub zmiana pozycji stołu obrotowego. Jeśli ruch odbywa się przez punkty pośrednie, to na wyjściu ROBOT_IN_POSITION podprogram obsługi wybranego wyrobu musi utrzymywać stan „0”. Aplikacja nadrzędna komputera wizyjnego nie narzuca żadnych ograniczeń czasowych na zmianę punktu roboczego. W przypadku potencjalnego błędu w podprogramie obsługi wybranego wyrobu (np. brak instrukcji ustalającej wartość „1” sygnału ROBOT_IN_POSITION po zrealizowaniu instrukcji ruchu) może spowodować to konieczność ręcznego wyprowadzenia aplikacji nadrzędnej ze stanu oczekiwania na potwierdzenie dojścia do pozycji roboczej. Z kilku powodów technicznych, które nie będą tutaj omawiane, aplikacja nadrzędna została tak zaprojektowana, że kolejne kontrole wizyjne i zmiany pozycji stołu obrotowego muszą być realizowane w różnych punktach zatrzymania manipulatora. Jeśli dwa (lub więcej) sąsiednie punkty robocze mają te same współrzędne i tę samą orientację narzędzia, to konieczne jest wycofanie manipulatora do punktu pośredniego i jego powtórne przemieszczenie do punktu roboczego przy wykonaniu pełnego cyklu sterowania sygnałami START_MOVING i ROBOT_IN_POSITION. Sam podprogram obsługi wybranego wyrobu nie odróżnia punktów roboczych, w których aplikacja nadrzędna realizuje albo kolejną kontrolę wizyjną albo przemieszcza stół obrotowy. Obie czynności mogą być wykonane tylko wtedy, gdy sygnał ROBOT_IN_POSITION = 1, ale dla ruchu stołu dodatkowo konieczne jest, aby wartość sygnału SAFE_ROBOT_POSITION także była równa „1”. Omówienia wymaga także sterowanie robotem po zakończeniu kontroli wizyjnych. Zależy ono od położenia ostatniego punktu roboczego, w którym aplikacja wykonywała kontrolę wizyjną: −−jeżeli punkt ten znajduje się poza strefą bezpieczną (tzn. sygnał SAFE_ROBOT_POSITION jest równy „0”), to aplikacja wymusza przemieszczenie manipulatora do punktu wewnątrz tej strefy w taki sam sposób, jak podczas jego przemieszczania związanego z wykonywaniem kontroli wizyjnych (podprogram obsługi wybranego wyrobu musi zatem zawierać odpowiednie instrukcje ruchu), −−jeżeli punkt ten znajduje się w strefie bezpiecznej (tzn. sygnał SAFE_ROBOT_POSITION jest równy „1”), to ostatni punkt roboczy jest traktowany przez aplikację nadrzędną komputera wizyjnego jako punkt spoczynkowy (wyjściowy), a zatem manipulator nie jest przemieszczany. Ostatnią czynnością wykonywaną przez aplikację nadrzędną jest zatrzymanie programu aplikacyjnego robota. W tym celu ustawia ona „1” na wyjściu STOP_PROGRAMU_ROBOTA i utrzymuje ten stan do momentu, w którym oprogramowanie systemowe robota ustawi wartość „0” na wyjściu dwustanowym ROBOT_ PROGRAM_RUNNING.
6.8. Budowa stanowiska i oprogramowanie narzędziowe
Pierwszą złożoną aplikacją kontroli wizyjnej zrealizowaną przez PIAP dla przemysłu maszynowego, sterowaną przez nadrzędny program komputera PC była praca wykonana dla Zakładów firmy „Eaton” z Tczewa. Wykorzystano w niej komputer przemysłowy firmy Advantech z systemem operacyjnym Windows, wyposażony dodatkowo w trzy specjalizowane karty: −−kartę akwizycji obrazu PCimage-SDIG firmy Matrix Vision GmbH, −−kartę 16-We/16-Wy dwustanowych OPTORE-PCI 16STANDARD firmy Wasco,
−−kartę z 4 portami RS-232/RS-422/RS-485 firmy Advantech. Wyposażenie stanowiska stanowił robot przemysłowy IRb-1400 firmy ABB, stół obrotowy TS002E firmy WEISS GmbH, kamera Basler A101p współpracująca z kartą akwizycji obrazu i czytnik kodu kreskowego Welch Allyn 3800 służący do wprowadzania odmiany skrzyni biegów, numeru montażowego i numeru seryjnego. Sterowanie stanowiskiem zrealizowano za pomocą sygnałów dwustanowych. Z czterech portów RS-232 stosowanej karty jeden był wolny (COM4), a pozostałe wykorzystano do obsługi czytnika kodu kreskowego (COM1), do programowania czasu ekspozycji kamery Basler (COM2) i do transmisji informacji o programie robota IRb-1400 (COM3). Podobną konfigurację sprzętową, z robotem firmy Kuka, ale bez stołu obrotowego wykorzystano do budowy stanowiska promującego PIAP na kilku targach branżowych. Bez robota i stołu obrotowego zbudowano dwa stanowiska pomiarowe dla firmy Iskra Zakłady Precyzyjne z Kielc, i stanowisko kontrolne dla zakładu Lear Corporation w Tychach (tego stanowiska ostatniecznie nie sfinalizowano). Program sterujący stanowiska napisano w języku C/C++. W pierwszej wersji wykonanej dla firmy Eaton do jego uruchomienia wykorzystano środowisko Visual C++ v. 6.0. W kolejnych wersjach środowiskiem uruchomieniowym był Visual Studio .NET 2003. Tym oprogramowaniem posługiwano się tworząc pozostałe wymienione aplikacje.
7. Podsumowanie W zapytaniach ofertowych, które PIAP otrzymuje od potencjalnych klientów, dotyczących możliwości zbudowania stanowisk kontroli wizyjnej często pojawia się żądanie, aby bez wykonywania dodatkowych i kosztownych modyfikacji była możliwość sprawdzania wyrobów, które w przyszłości dopiero wejdą do produkcji. W artykule przedstawiono dwa sposoby realizacji sterowania, które w mniejszym lub większym stopniu spełniają to żądanie. W obu przypadkach aplikacja sterująca wykonywaniem kontroli wizyjnej była tworzona w języku C lub C++, w obu wykorzystano pakiet NeuroCheck. Jednak osobie przystosowującej każde stanowisko do kontroli nowych wyrobów nie jest potrzebna ani znajomość języka C/C++ ani wiedza o środowisku Visual Studio, ponieważ wszystko, co potrzebne do prawidłowej pracy stanowiska, jest tworzone i konfigurowane poza samą aplikacją. Niezbędna wiedza obejmuje następujący zakres: −−znajomość środowiska NeuroCheck w zakresie tworzenie programów kontroli wizyjnych realizowanych przez ten pakiet, −−umiejętność tworzenia prostych programów robotowych zawierających instrukcje ruchu z punktu do punktu i obsługi We/ Wy dwustanowych, −−ogólną znajomość baz danych w formacie Access 2000 w zakresie wpisywania i edycji informacji przy wykorzystaniu gotowych formularzy, −−wiedzę na temat tworzenia tzw. pliku konfiguracyjnego raportu na podstawie którego określany jest globalny wynik kontroli i generowany raport końcowy. Oczywiście tam, gdzie nie zastosowano robota także wiedza na temat tworzenia jego programów aplikacyjnych jest zbędna. PIAP, poza szkoleniem z zakresu obsługi stanowiska, oferuje także kurs dotyczący tworzenia programów wizyjnych dla pakietu NeuroCheck oraz kurs tworzenia prostych aplikacji robotowych. W obu przypadkach szczegółowo omawiana jest budowa programów, które są wykorzystywane do kontroli wyrobów z bieżącej produkcji. W przypadku aplikacji wykonanej dla firmy Eaton jej przeszkoleni pracownicy byli w stanie opracować i wdrożyć oprogramowanie wizyjne i robotowe dla kontroli nowej skrzyni w przeciągu zaledwie dwóch dni.
Podziękowanie
Publikacja powstała jako wynik projektu ARIALE „Automatyzacja i robotyzacja dla nowej zreindustrializowanej Europy”.
81
Rozwiązania programowe w sterowaniu zaawansowanymi aplikacjami wizyjnymi Projekt ten jest realizowany przy wsparciu finansowym Komisji Europejskiej w ramach programu „Uczenie się przez całe życie” („Lifelong Learning Programme”). Publikacja odzwierciedla jedynie stanowisko autora. Komisja Europejska nie ponosi odpowiedzialności za umieszczoną w niej zawartość merytoryczną ani za sposób wykorzystania zawartych w niej informacji
na targi Automaticon 2014, materiały Przemysłowego Instytutu Automatyki i Pomiarów PIAP, 2014. 8. NeuroCheck Industrial Vision Systems – Programmer’s Reference, NeuroCheck GmbH, 1999. 9. NeuroCheck Industrial Vision Systems – User-Manual, NeuroCheck GmbH, 2002. 10. NeuroCheck Machine Vision for Industry – Getting Started, NeuroCheck GmbH, 1999. 11. NeuroCheck Machine Vision for Industry – Training Course, NeuroCheck GmbH, 1997 12. NeuroCheck Machine Vision for Industry – User-Manual, NeuroCheck DS GmbH, 1999 13. Bates J., Tompkins T., Poznaj Visual C++, Wydawnictwo MIKOM, 1999. 14. Leinecker R.C., Archer T.,Visual C++ 6 Vademecum profesjonalisty, Wydawnictwo Helion, 2000. 15. Petzold Ch., Programowanie Windows, Wydawnictwo RM, Warszawa 1999. 16. Microsoft Visual C++ 6.0 MFC Library Reference, Microsoft Press 1998. 17. ABB Robotics, User’s Guide 3HAC 7793-1 For BaseWare OS 4.0.60. 18. ABB Robotics, Instrukcja obsługi IRC5 z panelem FlexPendant. 19. KUKA Roboter GmbH, KUKA System Software (KSS) – KR C2/KR C3 Configuration (External Automatic), 2004. 20. KUKA Roboter GmbH, KUKA System Software (KSS) – KR C2/KR C3 Expert Programming, 2003.
Bibliografia
1. Syryczyński A., Dunaj J., Szawłowski A., Wawerek Z., Zintegrowany system wizyjnej kontroli wytwarzania, „Pomiary Automatyka Robotyka”, 12/2001. 2. Dunaj J., Instrukcja obsługi stanowiska kontroli wizyjnej siedzeń samochodowych w Zakładach “Faurecia”, materiały Przemysłowego Instytutu Automatyki i Pomiarów PIAP. 3. Dunaj J., Opis działania i obsługa aplikacji „EATON” stanowiska do kontroli wizyjnej skrzyń biegów, materiały Przemysłowego Instytutu Automatyki i Pomiarów PIAP. 4. Wawerek Z., Machine vision, widzenie maszynowe albo..., „Pomiary Automatyka Robotyka” 4/2008, 18–19. 5. Wawerek Z., Zabielski M., Autonomiczne stanowisko kontroli wizyjnej detali, „Pomiary Automatyka Robotyka”, 4/2008, 26–28. 6. Dunaj J., Pachuta M., Opis programu robota ABB IRb-140 i programu kamery SICK IVC-2D wykonanych na potrzeby Laboratorium Modelowania Elastycznych Linii Produkcyjnych Politechniki Poznańskiej, materiały Przemysłowego Instytutu Automatyki i Pomiarów PIAP, 2013. 7. Dunaj J., Opis programu demonstracyjnego robota Kuka KR16
Software Solutions in the Control Systems of Advanced Vision Applications Abstract: The article contains information about the software solutions used in the control of
advanced vision applications for the automotive industry realized in the Industrial Research Institute for Automation and Measurements PIAP. Author describes what criteria guided the selection of vision software, what must be the format of vision programs, how they are run in automatic mode, and how to define the interpretation of the results and a final report format. Two methods of configuring individual vision control of complex product depending on the control system used are presented. The article contains a description of the cooperation between the application controlled vision programs with industrial robot used to move the camera in one of the submitted application. Keywords: vision control, NeuroCheck, PLC, PC application, industrial robot, database, ODBC drivers
mgr inż. Jacek Dunaj jdunaj@piap.pl
W 1980 r. ukończył studia na Wydziale Elektrycznym Politechniki Warszawskiej, od 1985 r. jest zatrudniony w Przemysłowym Instytucie Automatyki i Pomiarów PIAP. Specjalizuje się w programowaniu mikroprocesorów, kontrolerów, sterowników i robotów przemysłowych, systemów wizyjnych a także komputerów PC programowanych w języku asemblera i C/C++ w środowisku różnych systemów operacyjnych. Współautor oprogramowania kilku urządzeń opracowanych w PIAP oraz wielu wdrożeń przemysłowych, w szczególności wymagających współpracy różnych urządzeń automatyki i wykorzystania oprogramowania biurowego (baz danych, arkuszy kalkulacyjnych).
82
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015
Informacje dla Autorów Za artykuł naukowy – zgodnie z Komunikatem Ministra Nauki i Szkolnictwa Wyższego z dnia 29 maja 2013 r. w sprawie kryteriów i trybu oceny czasopism naukowych – należy rozumieć artykuł prezentujący wyniki oryginalnych badań o charakterze empirycznym, teoretycznym, technicznym lub analitycznym zawierający tytuł publikacji, nazwiska i imiona autorów wraz z ich afiliacją i przedstawiający obecny stan wiedzy, metodykę badań, przebieg procesu badawczego, jego wyniki oraz wnioski, z przytoczeniem cytowanej literatury (bibliografię). Do artykułów naukowych zalicza się także opublikowane w czasopismach naukowych opracowania o charakterze monograficznym, polemicznym lub przeglądowym, jak również glosy lub komentarze prawnicze.
Wskazówki dla Autorów przygotowujących artykuły naukowe do publikacji Artykuły naukowe zgłoszone do publikacji w kwartalniku naukowotechnicznym Pomiary Automatyka Robotyka powinny spełniać następujące kryteria formalne: – tytuł artykułu (nieprzekraczający 80 znaków) w języku polskim oraz angielskim, – imię i nazwisko Autora/Autorów, adres e-mail, afiliacja (instytucja publiczna, uczelnia, zakład pracy, adres), – streszczenie artykułu (o objętości 150–200 słów) w języku polskim oraz angielskim, – słowa kluczowe (5–8 haseł) w języku polskim oraz w języku angielskim angielskim, – zasadnicza część artykułu – w języku polskim (lub w j. angielskim), – podpisy pod rysunkami w języku polskim oraz w języku angielskim, – tytuły tabel w języku polski oraz w języku angielskim, – ilustracje/grafika/zdjęcia jako osobne pliki w formacie .eps, .cdr, .jpg lub .tiff, w rozdzielczości min. 300 dpi, min. 1000 pikseli szerokości, opisane zgodnie z numeracją grafiki w tekście.
Artykuł powinien mieć objętość równą co najmniej 0,6 arkusza wydawniczego, nie powinien przekraczać objętości 1 arkusza wydawniczego (40 000 znaków ze spacjami lub 3000 cm2 ilustracji, wzorów), co daje ok. 8 stron złożonego tekstu. W przypadku artykułów przekraczających tę objętość sugerowany jest podział na części. Nie drukujemy komunikatów! Do artykułu muszą być dołączone notki biograficzne wszystkich Autorów (w języku artykułu) o objętości 500–750 znaków oraz ich aktualne fotografie. Redakcja zastrzega sobie prawo dokonywania skrótów, korekty językowej i stylistycznej oraz zmian terminologicznych. Przed publikacją autorzy akceptują końcową postać artykułu.
System recenzencki PAR Redakcja przyjmuje wyłącznie artykuły oryginalne, wcześniej niepublikowane w innych czasopismach, które przeszły etap weryfikacji redakcyjnej. Autorzy ponoszą całkowitą odpowiedzialność za treść artykułu. Autorzy materiałów nadesłanych do publikacji są odpowiedzialni za przestrzeganie prawa autorskiego. Zarówno treść pracy, jak i zawarte w niej ilustracje, zdjęcia i tabele muszą stanowić dorobek własny Autora, w przeciwnym razie muszą być opisane zgodnie z zasadami cytowania, z powołaniem się na źródło. Oddaliśmy do dyspozycji Autorów i Recenzentów System Recenzencki, który gwarantuje realizację tzw. podwójnie ślepej recenzji. Przesyłając artykuł do recenzji należy usunąć wszelkie elementy wskazujące na pochodzenie artykułu – dane Autorów, ich afiliację, notki biograficzne. Dopiero po recenzji i poprawkach sugerowanych przez Recenzentów artykuł jest formatowany zgodnie z przyjętymi zasadami. W przypadku zauważonych problemów, prosimy o kontakt z Redakcją.
Kwartalnik naukowotechniczny Pomiary Automatyka Robotyka jest indeksowany w bazach BAZTECH, Google Scholar oraz INDEX COPERNICUS (IC 3,22), a także w bazie naukowych i branżowych polskich czasopism elektronicznych ARIANTA. Punktacja MNiSW za publikacje naukowe wynosi 4 pkt (poz. 1618). Przyłączając się do realizacji idei Otwartej Nauki, udostępniamy bezpłatnie wszystkie artykuły naukowe publikowane w kwartalniku naukowotechnicznym Pomiary Automatyka Robotyka.
83
INFORMACJE DLA AUTORÓW
Oświadczenie dotyczące jawności informacji o podmiotach przyczyniających się do powstania publikacji Redakcja kwartalnika naukowotechnicznego Pomiary Automatyka Robotyka, wdrażając politykę Ministra Nauki i Szkolnictwa Wyższego odnoszącą się do dokumentowania etycznego działania Autorów, wymaga od Autora/Autorów artykułów podpisania przed przyjęciem artykułu do druku druku w kwartalniku oświadczenia zawierającego: 1. informację o udziale merytorycznym każdego wymieniowego Autora w przygotowaniu publikacji – celem jest wykluczenie przypadków tzw. „guest authorship”, tj. dopisywania do listy Autorów publikacji nazwisk osób, których udział w powstaniu publikacji był znikomy albo w ogóle nie miał miejsca. 2. informację o uwzględnieniu w publikacji wszystkich osób, które miały istotny wpływ na jej powstanie – celem jest: – potwierdzenie, że wszystkie osoby mające udział w powstaniu pracy zostały uwzględnione albo jako współautorzy albo jako osoby, którym autor/autorzy dziękują za pomoc przy opracowaniu publikacji, – potwierdzenie, że nie występuje przypadek „ghostwriting”, tzn. nie występuje sytuacja, w której osoba wnosząca znaczny wkład w powstanie artykułu nie została wymieniona jako współautor ani nie wymieniono jej roli w podziękowaniach, natomiast przypisano autorstwo osobie, która nie wniosła istotnego wkładu w opracowanie publikacji;
84
P
O
M
I
A
Redakcja na mocy udzielonej licencji ma prawo do korzystania z utworu, rozporządzania nim i udostępniania dowolną techniką, w tym też elektroniczną oraz ma prawo do rozpowszechniania go dowolnymi kanałami dystrybucyjnymi.
3. informację o źródłach finansowania badań, których wyniki są przedmiotem publikacji – w przypadku finansowania publikacji przez instytucje naukowo-badawcze, stowarzyszenia lub inne podmioty, wymagane jest podanie informacji o źródle środków pieniężnych, tzw. „financial disclosure” – jest to informacja obligatoryjna, nie koliduje ze zwyczajowym zamieszczaniem na końcu publikacji informacji lub podziękowania za finansowanie badań.
Zapraszamy do współpracy Poza artykułami naukowymi publikujemy również materiały informujące o aktualnych wydarzeniach, jak konferencje, obronione doktoraty, habilitacje, uzyskane profesury, a także o realizowanych projektach, konkursach – słowem, o wszystkim, co może interesować i integrować środowisko naukowe. Zapraszamy do recenzowania/ polecania ciekawych i wartościowych książek naukowych.
Umowa o nieodpłatne przeniesienie praw majątkowych do utworów z zobowiązaniem do udzielania licencji CC-BY Z chwilą przyjęcia artykułu do publikacji następuje przeniesienie majątkowych praw autorskich na wydawcę. Umowa jest podpisywana przed przekazaniem artykułu do recenzji. W przypadku negatywnych recenzji i odrzucenia artykułu umowa ulega rozwiązaniu.
Redakcja kwartalnika Pomiary Automatyka Robotyka nauka@par.pl
Zasady cytowania Podczas cytowania artykułów publikowanych w kwartalniku naukowo-technicznym Pomiary Automatyka Robotyka prosimy o podawanie nazwisk wszystkich autorów, pełną nazwę czasopisma oraz numer DOI, np.:
Cegielska A., Olszewski M., Nieinwazyjny interfejs mózg–komputer do zastosowań technicznych, „Pomiary Automatyka Robotyka”, R. 19, Nr 3/2015, 5–14, DOI: 10.14313/PAR_217/5.
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
kwartalnik
czasopisma
pomiary
obliczanie miara rozmiar
nawigacja
bot
www sprawdzian
miara
POLSPAR
automatyka PIAP eksperyment
innowacyjność
kalendarium
artykuły
seminarium
staż
federacja
nauka
publikacje
automatyka
stowarzyszenie
HORIZON 2020 książki organizacja projekt konkurs
robotykatest zapowiedź
próba
relacja
awans test
publikacje
kongres
profesura
konferencje
dr h.c.
50 LAT
AutoCAD streszczenie
agencja kosmiczna
Top500 habilitacja
innowacje
IFAC
ZPSA
relacja
bot
szkolenie
doktorat
recenzje
POLSA
seminarium
sterowanie
związek
esa
szkolenie
86
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
ORGANIZACJE I STOWARZYSZENIA
European Space Agency Europejska Agencja Kosmiczna ESA jest międzyrządową organizacją, której historia dobiega czterdziestu lat. Działalność ESA koncentruje się na koordynacji współpracy państw europejskich zainteresowanych badaniami i eksploatacją przestrzeni kosmicznej.
Historia Początki Europejskiej Agencji Kosmicznej sięgają 1960 r. Wówczas przystąpiono do tworzenia dwóch agencji – Europejskiej Organizacji Rozwoju Rakiet Nośnych ELDO (European Launcher Development Organisation) oraz Europejskiej Organizacji Badań Kosmicznych ESRO (European Space Research Organisation), które zaczęły funkcjonować w 1964 r. W obecnej postaci ESA została powołana na mocy Konwencji podpisanej w Paryżu 30 maja 1975 r. przez połączenie ESRO i ELDO. W jej skład weszło 10 państw założycielskich − Belgia, Dania, Francja, Niemcy, Włochy, Holandia, Hiszpania, Szwecja, Szwajcaria i Wielka Brytania. W skład ESA wchodzą obecnie 22 państwa członkowskie: Austria, Belgia, Czechy, Dania, Estonia, Finlandia, Francja, Grecja, Hiszpania, Holandia, Irlandia, Luksemburg, Niemcy, Norwegia, Polska, Portugalia, Rumunia, Szwajcaria, Szwecja, Węgry, Wielka Brytania oraz Włochy. Na podstawie osobnej umowy w pracach ESA uczestniczy również Kanada. Jej zadaniem jest realizacja wspólnego, europejskiego programu badania i wykorzystania przestrzeni kosmicznej. Agencja wspiera również rozwój nowoczesnego i konkurencyjnego przemysłu w państwach członkowskich. Centrala ESA mieści się w Paryżu we Francji, ale Agencja funkcjonuje w kilku siedzibach, z których każda ma inne obowiązki: – EAC, European Astronauts Centre – Europejskie Centrum Astronautyczne w Kolonii w Niemczech; – ESAC, European Space Astronomy Centre – Europejskie Centrum Astronomiczne w Villanueva de la Canada, w Madrycie w Hiszpanii; – ESOC, European Space Operations Centre – Europejskie Centrum Operacji Kosmicznych w Darmstadt, w Niemczech; – ESRIN, ESA Centre for Earth Observation – Europejskie Centrum Obserwacji Ziemi we Frascati, niedaleko Rzymu, we Włoszech; – ESTEC, European Space Research and Technology Centre – Europejskie Centrum Badań i Technologii Kosmicznych, w Noordwijk, w Holandii; – ECSAT, European Centre for Space Applications and Telecommunications – Europejskie Centrum Aplikacji Kosmicznych i Telekomunikacji w Harwell, Oxfordshire w Wielkiej Brytanii. Agencja dysponuje również wieloma stacjami naziemnymi, biurami i placówkami na terenie Unii Europejskiej, m.in. we Francji (Toulouse, Lex Mureaux, Evry, Cannes), w Niemczech (Kolonia, Oberpfaffenhofen), w Hiszpanii (Cebreros, Maspalomas, Madryt, Valencia, Barcelona), w Belgii (Bruksela, Redu), Szwecji (Kiruna).
Placówki ESA znajdują się także w innych państwach europejskich, np. w Szwajcarii (Genewa), jak również poza kontynentem europejskim, np. w Stanach Zjednoczonych (Waszyngton, Houston, Greenbelt, Baltimore, Pasadena), w Rosji (Moskwa) oraz w Gujanie Francuskiej (kosmodrom w Kourou). Misja ESA Zadaniem ESA jest przygotowanie i wdrażanie europejskiego programu kosmicznego. Programy Europejskiej Agencji Kosmicznej są tak zaprojektowane, aby dowiedzieć się jak najwięcej o Ziemi, jej bezpośrednim otoczeniu, przestrzeni naszego Układu Słonecznego i wszechświata. Służą one także do rozwoju technologii i usług satelitarnych oraz wspierania europejskiego przemysłu. ESA ściśle współpracuje również z organizacjami kosmicznymi poza Europą.
„ESA została powołana na mocy Konwencji podpisanej w Paryżu 30 maja 1975 r.”
Celem Agencji jest zapewnianie i promowanie współpracy między państwami europejskimi, wyłącznie dla celów pokojowych, w zakresie badań i technologii kosmicznych oraz ich wykorzystania w celach naukowych i operacyjnych systemach, m.in. przez: – opracowywanie i wdrażanie długoterminowej europejskiej polityki kosmicznej, – wypracowywanie zaleceń dotyczących celów działalności kosmicznej, – koordynowanie polityki kosmicznej poszczególnych państw, w tym w odniesieniu do innych państwowych i międzynarodowych organizacji i instytucji, – prowadzenie działalności w przestrzeni kosmicznej, – koordynowanie europejskiego programu kosmicznego z programami narodowymi, – włączanie programów narodowych w program europejski, zwłaszcza w kwestii rozwoju satelitów użytkowych,
87
ORGANIZACJE I STOWARZYSZENIA
– wypracowywanie i wprowadzanie w życie polityki przemysłowej w sektorze kosmicznym w zakresie własnych programów, – wypracowywanie zaleceń dotyczących spójnej polityki państw członkowskich w tej dziedzinie. Europejska Agencja Kosmiczna realizuje dwa rodzaje programów: – programy obowiązkowe – wszystkie państwa członkowskie są zobowiązane do uczestnictwa. Są one finansowane ze składek państw członkowskich (ich wielkość jest proporcjonalna do dochodu narodowego poszczególnych państw). Programy te obejmują m.in. badania przestrzeni kosmicznej oraz budowę i wykorzystanie sprzętu do badań, programy naukowe – fizyka systemu słonecznego, astronomia i fizyka podstawowa, badania technologiczne, programy edukacyjne, pośrednictwo w przepływie informacji o programach kosmicznych państw; – programy opcjonalne – finansowane tylko przez państwa w nich uczestniczące. Udział poszczególnych krajów jest ustalany w drodze negocjacji odrębnie dla każdego programu. Ich zakres nie jest szczegółowo określony, m.in. budowa europejskiej rakiety nośnej, loty załogowe, robotyka i programy służące użytkowym zastosowaniom technik kosmicznych (telekomunikacja, obserwacja Ziemi, nawigacja). Jednym z głównych celów działania Europejskiej Agencji Kosmicznej jest poprawa konkurencyjności przedsiębiorstw, zwłaszcza małych i średnich. Aby to osiągnąć, ESA wprowadziła szereg udogodnień dla firm z sektora MŚP, między innymi dzięki stworzeniu skierowanych do nich programów. Przedsiębiorcy mogą uzyskać pomoc w zakresie doradztwa technicznego i biznesowego, możliwości korzystania z laboratoriów Agencji, oraz dofinansowania projektów. Powołane w tym celu Biuro ds. MŚP dysponuje platformą SineQuaNet, która umożliwia dostęp do
urządzeń technicznych, oferuje wsparcie ekspertów i usługi szkoleniowe. ESA, aby zwiększyć konkurencyjność małych i średnich przedsiębiorstw, stworzyła kilka programów, które oferują dofinansowania dla przedsiębiorców współpracujących z branżą kosmiczną lub specjalizujących się w wysokich technologiach.
zasadzie „fair return” oznaczającej, że dla każdego z państw członkowskich udział jego przemysłu w kontraktach ESA powinien być jak najbliższy udziałowi tego kraju w budżecie Agencji. Do pomiaru takiego zwrotu dla każdego państwa wyliczany jest współczynnik, który stanowi stosunek między kwotą otrzymanych kontraktów, a wartością oczekiwaną (czyli procentowy udział w finansowaniu Agencji pomnożony przez całkowitą sumę kontraktów udzielonych wszystkim członkom ESA), przy uwzględnieniu wartości technologicznej przyznanych kontraktów. Wśród polskich firm i instytutów badawczych, działających w sektorze kosmicznym i współpracujących z ESA, należy wymienić m.in. Adaptronica, Astri Polska, Astronika, Centrum Badań Kosmicznych PAN, Creotech Instruments, GMV, Herz Systems, Instytut Odlewnictwa, ITTI, KenBIT, PikTime Systems, Politechnika Wrocławska, Robotics Inventions, Sener Polska, TopGaN, Uniwersytet Warmińsko-Mazurski, Vigo System, Vratis oraz WASAT. Obecnie Polska uczestniczy w programach obowiązkowych i opcjonalnych ESA. Od akcesji w 2012 r. Polska jest objęta programem przejściowym (PIIS, Polish Industry Incentive Scheme), mającym za zadanie bezpośrednie wsparcie polskiego przemysłu przez 5 lat. Celem PIIS jest przystosowanie polskiego przemysłu do realizacji działań i spełnienia wymogów ESA. W Polsce, w Warszawie znajduje się Europejskie Biuro Edukacji Kosmicznej ESERO – projekt edukacyjny Europejskiej Agencji Kosmicznej ESA, skierowany do nauczycieli, zapewniające wsparcie i materiały w nauczaniu przedmiotów przyrodniczych i technicznych w szkołach.
Polska i ESA W 2008 r. Polska otrzymała status Państwa Współpracującego z ESA (PECS, Plan for European Cooperating States). Dało to szansę polskim instytutom, uczelniom oraz przedsiębiorstwom na uczestnictwo w programach i działaniach ESA przez udział w czynnościach przygotowawczych w obszarze technologii i nauki. W lipcu 2012 r. Rada Europejskiej Agencji Kosmicznej, w skład której wchodzą wszystkie państwa członkowskie, jednomyślnie zaakceptowała przystąpienie Polski do Agencji. 13 września 2012 r. podczas oficjalnej uroczystości w Centrum Nauki Kopernik w Warszawie dokonano wymiany podpisanych dokumentów akcesyjnych. Stronę polską reprezentował wówczas wicepremier, minister gospodarki Waldemar Pawlak, a Agencję ESA − jej Dyrektor Generalny Jean-Jacques Dordain. Ostatnim krokiem do pełnego członkostwa Polski w ESA była ratyfikacja umowy przez polski Parlament i Prezydenta RP. Polska stała się 20. państwem członkowskim ESA 19 listopada 2012 r. Konwencja ESA gwarantuje, że większość polskiej składki (z pominięciem kosztów infrastrukturalnych, operacyjnych i administracyjnych) powróci w postaci kontraktów ESA z polskimi podmiotami. Agencja zgodnie z art. 7 Konwencji prowadzi politykę przemysłową w taki sposób, aby „wszystkie Państwa Członkowskie uczestniczyły w sposób sprawiedliwy, mający odniesienie do ich wkładu finansowego, we wdrażaniu europejskiego programu kosmicznego i w związanym z nim rozwoju technologii kosmicznych”. Geograficzne rozmieszczenie wszystkich kontraktów ESA podlega jednej generalnej
Ocena dwóch lat członkostwa Polski w ESA Akcesja Polski do ESA została oceniona wspólnie przez komisję Ministerstwa Gospodarki i specjalistów ESA. W wyniku jej prac powstały następujące rekomendacje.
Wybrane daty w historii ESA: 1962 – ostateczna decyzja o powołaniu do życia agencji ELDO i ESRO, 1964 – oficjalna data rozpoczęcia działania agencji ELDO i ESRO, 1968 – wystrzelenie w kosmos pierwszego satelity przez ESRO, 1975 – rozpoczęcie pierwszej misji o nazwie COS-B, mającej na celu badanie promieniowania gamma za pomocą sondy kosmicznej,
88
P
O
M
I
A
R
1973 – ESRO i NASA budują Spacelab – laboratorium do badań w wahadłowcach, pozwalało na wykonywanie doświadczeń związanych z mikrograwitacją, 1975 – powstanie ESA z połączenia ELDO i ESRO,
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
1978 − ESA nawiązała współpracę z NASA i przystąpiła do realizacji projektu IUE, który miał na celu umieszczenie na orbicie pierwszego teleskopu. Inne wspólne misje to SOHO oraz Ulysses, mające na celu obserwacje Słońca, czy Kosmiczny Teleskop Hubble’a. 1979 – rozpoczęcie misji Ariane 1, zakładającej budowę rakiety wynoszącej na orbitę sprzęt naukowy oraz komercyjny, pierwsze loty rakiet nośnych,
O
B
O
T
Y
K
A
N R 3/ 20 1 5
ORGANIZACJE I STOWARZYSZENIA
Ustalenia i rekomendacje ESA są pogrupowane w sześciu obszarach tematycznych − wspieranie współpracy nauki i biznesu (1), wsparcie inwestycji w sektor kosmiczny (2), przedłużenie Programu Wsparcia dla Polskiego Przemysłu PIIS (3), sektor oparty na technikach satelitarnych (4), szkolenia podmiotów biorących udział w przetargach ESA (5) zaangażowanie instytucji publicznych w politykę kosmiczną (6). Pierwsze ustalenie i rekomendacja – współpraca nauki i biznesu Znakomita baza wiedzy akademickiej w Polsce będzie w przyszłości punktem wyjścia do tworzenia konkurencyjnych firm sektora kosmicznego. Obecnie brak jest tradycji przemysłowych w obszarze sektora kosmicznego, również poziom zachęt dla prywatnych inwestycji w tym sektorze jest nadal ograniczony. Ośrodki akademickie mają doświadczenie w zakresie rozwijania oprzyrządowania badawczego lub jego komponentów (w szczególności przyrządy optyczne), natomiast w ramach programów ESA nie wykazano do tej pory dostępności technologii platform statków kosmicznych ani technologii mikrofalowych. Trwają wysiłki na rzecz zainteresowania tymi zagadnieniami polskich podmiotów dysponujących odpowiednim potencjałem. Rekomendacja – wzmocnienie przynoszącej obopólne korzyści współpracy między biznesem i nauką, opartej na silnej sieci ośrodków akademickich. Należy zapewnić zachowanie właściwej równowagi między instytucjami akademickimi a przemysłem. Równie ważne jest wskazanie istotnej roli kierunków naukowych i inżynierskich na uczelniach wyższych powiązanych z tematyką kosmiczną.
mają firmy z sektora obronnego, IT i lotniczego, które w swoich strategiach powinny uwzględniać rozwój technologii kosmicznych. Umożliwi to w dalszej perspektywie stworzenie swoistego skupiska firm i podwykonawców wokół liderów konkretnych projektów. Rekomendacja – należy zachęcać firmy z sektorów niepowiązanych bezpośrednio z tematyką kosmiczną do angażowania się w ten obszar oraz wspierać inwestycje polskich podmiotów w rozwój działalności kosmicznej. Pomocna w tym zakresie mogłaby być Krajowa Strategia Kosmiczna, zawierająca mierzalne cele i długoterminowe plany wydatków na sektor kosmiczny.
Drugie ustalenie i rekomendacja – inwestycje w sektor kosmiczny Uzyskanie maksymalnych korzyści z członkostwa Polski w ESA zależy od zwiększenia nakładów prywatnych na rozwój współpracy z sektorem naukowym. Szczególny potencjał
Trzecie ustalenie i rekomendacja – przedłużenie Programu Wsparcia dla Polskiego Przemysłu ESA wskazuje, że polskie firmy aktywnie uczestniczą w otwartych przetargach, kierowanych do wszystkich uczestników rynku za pomocą portalu EMITS. Wyjątkowo dobre rezultaty osiągnięto w programach Sentinel i Exomars, a także misji Proba-3. Duże nadzieje wiązane są z propozycjami polskiego sektora zgłoszonymi w programie Meteorological Operational Satellite Programme (MetOp). Kalendarz przygotowań do misji ESA – średnich (wybór podwykonawców zazwyczaj raz na trzy lata) oraz dużych (wybór podwykonawców zazwyczaj raz na pięć lat) w opcjonalnym programie obserwacji Ziemi oraz obowiązkowym programie naukowym nie był dostosowany do procesu akcesji Polski do Konwencji ESA. Takie zaplanowanie terminów nie dało polskim podmiotom wystarczających możliwości udziału w przetargach na duże projekty ESA. Siedmioletni okres Programu Wsparcia Polskiego Przemysłu pozwoliłby na zrekompensowanie niekorzystnego ułożenia terminów wyborów podwykonawców dla programów ESA. Rekomendacja – program PIIS powinien koncentrować się na: – wspieraniu tworzenia powiązań kooperacyjnych i udziału polskich firm w międzynarodowych konsorcjach;
1980 – założenie Arianespace − pierwszego przedsiębiorstwa na świecie zajmującego się komercyjnym transportem kosmicznym, 1983 – Niemiec, Ulf Merbold, zostaje pierwszym astronautą ESA, który leciał wahadłowcem, 1997 – umocnienie ESA na rynku komercyjnych lotów kosmicznych dzięki programowi Ariane 5, 2003 – lądowanie sondy SMART-1 na Księżycu,
2005 – pomyślne lądowanie sondy Huygens na Tytanie – największym księżycu Saturna, 2006 – rozpoczęcie misji badawczej COROT, prowadzonej we współpracy z francuskim Państwowym Ośrodkiem Badań Kosmicznych – stanowi duży postęp w poszukiwaniu planet poza układem słonecznym, 2008 – uruchomienie na Międzynarodowej Stacji Kosmicznej laboratorium Columbus,
– rozwoju wysoko zaawansowanych technologii kosmicznych i budowy elementów, tzw. flight hardware, dalszym wsparciu B+R w zakresie rozbudowy technologii kosmicznych dot. budowy satelitów; – wzroście poziomu gotowości technologicznej oraz przygotowaniom do tzw. małych misji; wsparciu czynności przygotowawczych, które mają na celu rozwój kompetencji zasobów ludzkich, certyfikację rozwiązań i procesów oraz rozwoju łańcucha dostaw. Czwarte ustalenie i rekomendacja – sektor oparty na technikach satelitarnych Polski przemysł wykorzystujący techniki satelitarne jest już na tyle zaawansowany, aby móc prowadzić stałą działalność gospodarczą oraz wygrywać przetargi organizowane przez ESA. Polskie podmioty oferujące usługi oparte o dane satelitarne w większości są odpowiednio przygotowane do odnoszenia sukcesów w ramach projektów ESA bez wsparcia ze strony PLIIS. Jednakże, w przypadku projektów dotyczących rozwoju aplikacji satelitarnych, ich wpływ na długoterminową realizację założeń dotyczących zwrotu geograficznego jest mniejszy. Rekomendacja – należy zapewnić dalsze wsparcie dla przemysłu i usług opartych na danych satelitarnych oraz zagwarantować wzrost krajowych nakładów na ten sektor (wliczając w to większe zaangażowanie uczestnictwa polskich podmiotach w adekwatnych programach ESA). Piąte ustalenie i rekomendacja – przygotowanie podmiotów do udziału w przetargach ESA W odniesieniu sukcesu przez polskie podmioty w konkursach kluczowe znaczenie ma wiedza przedsiębiorców na temat misji kosmicznych organizowanych przez ESA, rynku w sektorze kosmicznym w zakresie infrastruktury satelitarnej oraz praktyk zamówień publicznych dotyczących tego rodzaju misji. Bardzo ważne jest praktyczne zrozumienie zasad i pro-
2010 – rozpoczęcie misji CryoSat-2, której celem jest badanie pokrywy lodowej Ziemi, 2012 – wstąpienie Polski do ESA, 2013 – ustalenie, po raz pierwszy, pozycji wyznaczonego punktu przy użyciu czterech satelitów wchodzących w skład systemu nawigacji Galileo.
89
ORGANIZACJE I STOWARZYSZENIA
cedur administracyjno-technicznych ESA, w których szczegółowo określone są warunki uczestnictwa w przetargach. Rekomendacja – należy opracować i realizować specjalne szkolenia poświęcone postępowaniom przetargowym oraz założeniom polityki dotyczącej misji ESA (szkolenia powinny objąć zarówno pracowników administracji, jak i przedsiębiorstwa branży kosmicznej). Niezbędne jest zapewnienie dostępu do informacji na temat rynku w odniesieniu do poszczególnych sektorów segmentu kosmicznego, co pozwoliłoby polskim firmom na zdobycie lepszego rozeznania na temat rynku, konkurencji oraz potencjalnych partnerów. Polski przemysł skorzystałby na szerszym dostępie do informacji o rynku, konkurencyjnych podmiotach i potencjalnych partnerach. Ponadto w planach są dodatkowe szkolenia poświęcone zapewnieniu jakości oraz audytowaniu kosztów szacowaniu polskich przedsiębiorstw i środowisk akademickich.
oraz ośrodków badawczych. Do członków-założycieli Związku należą m.in. Centrum Badań Kosmicznych PAN, Bumar, Astri Polska, Geosystems, GMV Polska, Sener Polska oraz Przemysłowy Instytut Automatyki i Pomiarów PIAP. Podstawowe zadania Związku to: – konsolidacja środowiska przedsiębiorców, ośrodków badawczych oraz organizacji zainteresowanych eksploatacją i eksploracją przestrzeni kosmicznej oraz prowadzeniem badań naukowych i prac wdrożeniowych związanych z produktami i technologiami o zastosowaniach kosmicznych, – prowadzenie działań na rzecz podniesienia potencjału ekonomicznego polskiego sektora kosmicznego, – inicjowanie współpracy między podmiotami polskiego sektora kosmicznego oraz pokrewnymi sektorami (lotnictwo, obronność) w celu efektywnego wykorzystania środków z budżetu państwa, programów ESA oraz funduszy Unii Europejskiej, – wspomaganie Sejmu i Senatu RP, Rady Ministrów, ministerstw oraz pozostałych organów administracji państwowej w kreowaniu krajowej polityki kosmicznej i realizacji jej założeń. Związek, zrzeszający obecnie 30 polskich przedsiębiorstw oraz instytucji naukowo-badawczych działających w sektorze kosmicznym, będzie także prowadził działania promujące potencjał polskiego sektora kosmicznego oraz działania zmierzające do zwiększenia liczby swoich członków, tak aby opinie i ekspertyzy wypracowywane przez Związek były reprezentatywne. Siedziba Związku znajduje się obecnie w Przemysłowym Instytucie Automatyki i Pomiarów PIAP w Warszawie.
Szóste ustalenie i rekomendacja – zaangażowanie instytucji publicznych w politykę kosmiczną W krajach o dużym potencjale rozwoju sektora kosmicznego ważne jest stworzenie zaplecza w postaci instytucji wykonawczej koordynującej wdrażanie polityki kosmicznej, ponoszącej odpowiedzialność za sektor kosmiczny, a także będącej głównym partnerem ESA. Rekomendacja – ESA dostrzega znaczenie doprowadzenia do pełnej operacyjności Polskiej Agencji Kosmicznej, jako jednostki wykonawczej zapewniającej przepływ informacji, komunikację i wsparcie podmiotów z sektora kosmicznego. Związek Pracodawców Sektora Kosmicznego Równocześnie z negocjacjami akcesyjnymi w 2012 r. oraz procesem ratyfikacyjnym został zainicjowany proces tworzenia organizacji reprezentującej podmioty zainteresowane realizacją kontraktów dla Europejskiej Agencji Kosmicznej. Potrzebę powołania takiej organizacji zgłaszały zarówno podmioty polskiego sektora kosmicznego, jak i Ministerstwo Gospodarki (odpowiedzialne za negocjacje i proces akcesyjny) oraz Polska Agencja Rozwoju Przedsiębiorczości.
P
O
M
I
A
R
„Polska Agencja Kosmiczna powołana została ustawą z 26 września 2014 r.”
W listopadzie 2014 r na stanowisko prezesa Polskiej Agencji Kosmicznej został powołany prof. Marek Banaszkiewicz, który wcześniej pełnił funkcję dyrektora Centrum Badań Kosmicznych Polskiej Akademii Nauk. Wiceprezesem ds. nauki został prof. Marek Moszyński z Wydziału Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej. Siedziba POLSA znajduje się w Gdańskim Parku Naukowo-Technologicznym, jej otwarcie nastąpiło 11 lipca 2015 r. Filie Agencji powstaną w przyszłości w Warszawie i Rzeszowie.
Mateusz Wolski Przemysłowy Instytut Automatyki i Pomiarów PIAP dr inż. Małgorzata Kaliczyńska kwartalnik Pomiary Automatyka Robotyka
Polska + ESA = POLSA W sobotę 7 lutego 2015 r. zainaugurowane zostało działanie Polskiej Agencji Kosmicznej – POLSA (Polish Space Agency), która ma wyznaczyć punkt zwrotny w dziejach zaangażowania Polski w podbój kosmosu. Działania zmierzające w tym kierunku rozpoczęły się w grudniu 2013 r. Wówczas do Sejmu wpłynął poselski projekt utworzenia Polskiej Agencji Kosmicznej. W 2014 r. po pierwszym czytaniu ustawy wskazano konieczność zdefiniowania sztywnych ram pieniężnych. Miesiąc później Sejm uchwalił ustawę o powołaniu Polskiej Agencji Kosmicznej (za głosowało 434 posłów, przeciw 3, 1 się wstrzymał). Swoim nazwiskiem ustawę firmował Waldemar Pawlak. We wrześniu Sejm zadecydował, że Agencja będzie miała siedzibę w Gdańsku. W tym samym czasie Ministerstwo Gospodarki pracowało nad Prawem Kosmicznym, które będzie regulowało działalność polskich podmiotów w kosmosie. Zabronio-
Po licznych spotkaniach przygotowawczych, 31 października 2012 r. w Centrum Konferencyjnym Przemysłowego Instytutu Automatyki i Pomiarów PIAP odbyło się zgromadzenie założycielskie Związku Pracodawców Sektora Kosmicznego, w którym wzięło udział 19 podmiotów – dużych przedsiębiorstw, średnich i małych firm
90
no m.in. wynoszenia na orbitę nośników broni atomowej. Polska Agencja Kosmiczna powołana została ustawą z 26 września 2014 r. Jej zadaniem jest koordynacja działań polskiego sektora kosmicznego, rozproszonego obecnie między różne instytucje. POLSA będzie również tworzyć własne laboratoria oraz stymulować współpracę świata nauki z przemysłem i biznesem.
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015
Dr Mieczyslaw (Mietek) Brdyś Dr Mieczyslaw Brdyś (known to many as Mietek) died on Saturday 25th July at the Queen Elizabeth Hospital in Birmingham following a short illness.
After graduating from the Silesian Technical College in Katowice, Poland in 1965, Mietek went on to study Electronic and Control Engineering at the Warsaw University of Technology, gaining his MSc in 1970. He received his PhD in 1974 from Warsaw University of Technology, and then a later DSc in 1980. From 1974 to 1983, he held the posts of Assistant Professor and then Associate Professor at the Warsaw University of Technology. In 1992 he was promoted to Professor of Technical Sciences. Mietek spent a number of years working outside of his native Poland. Between 1978 and 1979 he was an academic visitor at the University of Minnesota in Minneapolis, USA, and during this time he also worked as a consultant for Honeywell. From 1983 to 1984 he was working at City University in London, and then between 1985 and 1988 he spent time at De Montfort University in Leicester, UK. Since 1989, he has held the post of Senior Lecturer in Control Systems in the School of Electronic, Electrical and Systems Engineering at the University of Birmingham,
UK. During this time Mietek maintained close contacts with research centres in Poland, and since 2000 has also held the position of Professor of Control Systems Engineering at the Gdansk University of Technology. Mietek was the author of many monographs, numerous books and bookchapters and was an author of over 250 international journal articles and conference papers in the field of control systems engineering and its applications to in the field of environmental systems, defence systems and industrial processes. During his career Mietek had received major grants from the European water industry, Polish and UK Research Councils and the European Commission. He played an active role in the International Federation on Automatic Control (IFAC), as Chair of the Technical Committee 5.4 on Large Scale Complex Systems and also International Programme Chair of the 11th IFAC Symposium on Large Scale Complex Systems in Gdansk in 2007. Mietek’s research interests included many areas of control theory, including: hierarchical
multilayer and spatially distributed structures and algorithms for intelligent decision support and control of complex uncertain systems, robust monitoring, diagnosis and fault tolerant control, softly switched robustly feasible model predictive control, supervisory control, and hybrid dynamics.Some of his most recent work on integrated monitoring, control and security of critical infrastructure systems, which was published in the Annals of Automatic Control, had attracted significant international attention and enthused a number of PhD students to focus on this area. Mietek will be remembered in the academic community for his deep understanding and enthusiasm for his subject, and the dedicated supervision and kindness he showed to his many PhD students over the years. Professor Duc Truong Phan, Head of the School of Mechanical Engineering, University of Birmingham.
Announcement by Professor Peter Gardner, Head of the School of Electronic, Electrical and Systems Engineering Staff, students and alumni in the School of EESE at Birmingham have been saddened to hear news of the death of Dr Mietek Brdys. He passed away on 25th July 2015. Mietek was a distinguished, dedicated and committed academic with a passion for passing on the benefits of his extensive knowledge and experience in the field of control. He joined the University of Birmingham as a lecturer in January 1989. He was still working full time in the School right up until the start of the short illness from which he died. He will be greatly missed by all of us Personal comments by three of Professor Brdys’s former students I was astonished and sad when I heard that Prof. Brdys had passed away. Not long before, I contacted him to be my referees in my PhD application. Prof. Brdys was my bachelor thesis supervisor. It was because of him that I opted to continue my study in control engineering. He worked very hard and always willing to help his students. His lectures on control were classic. His death is a loss to University of Birmingham, and control community. He was a great Professor, and I forever grateful for his guidance along my study and professional career. Jihong Zhu German Aerospace Center (DLR)
Prof. Brdys was the supervisor of my final year project when I was an undergraduate in the University of Birmingham. He was not only a very professional, patient and diligent teacher but also a very nice friend. He often worked till late in the evening, and he was always very willing to help us as long as we asked for his help. He liked chatting with us during a break and always encouraged us when we were stressful. Being a student of him, I have learnt a lot from him. I feel so grateful that he was my teacher and friend. Lu Wang University of Southampton
I joined Professor Brdys’ group as an obscure student who had no clear view in future and no career plan. It was Professor Brdys who embraced me with his constant trust, encouragement and mentoring, and showed me the beauty of scientific research. His enlightenment built my self-confidence in my potential and my commitment to research as a career, which has been the wisest choice I have ever made. In him, I saw what made a great mentor. Yongjing Wang University of Birmingham
91
WSPOMNIENIA
Profesor Mieczysław Adam Brdyś Z wielkim smutkiem przyjęliśmy wiadomość, że 25 lipca 2015 r. zmarł znakomity polski automatyk, teoretyk systemów sterowania.
Software w Leicester w Wielkiej Brytanii. Następnie, jako visiting professor, pracował na Universitat Politècnica de Catalunya, Department of Systems Engineering, Automatic Control and Industrial Informatics w Barcelonie w Hiszpanii. Od 1989 r. jako senior lecturer prowadził wykłady na University of Birmingham, College of Engineering and Physical Sciences, Department of Electronic, Electrical and Computer Engineering w Birmingham w Wielkiej Brytanii. Mieczysław Brdyś utrzymywał jednak przy tym bliskie kontakty z ośrodkami naukowymi w Polsce. Od lutego 2000 r. podjął pracę na Wydziale Elektrotechniki i Automatyki na Politechnice Gdańskiej. Tam też utworzył Zespół Inteligentnych Systemów Sterowania i Podejmowania Decyzji, a następnie Katedrę Inżynierii Systemów Sterowania, gdzie pracował na stanowisku profesora zwyczajnego Politechniki Gdańskiej. Jest autorem lub współautorem kilku monografii, kilkunastu rozdziałów w opracowaniach monograficznych, autorem lub współautorem blisko 150 referatów konferencyjnych i blisko 80 artykułów (m.in. w renomowanych czasopismach naukowych Automatica, IEEE Transactions on Automatic Control). Prowadził 25 projektów badawczych finansowanych przez instytucje rządowe oraz firmy z Polski, Hiszpanii, Wielkiej Brytanii, Niemiec, Holandii, Francji oraz Komisję Europejską. Działał jako konsultant wielu firm w Polsce i za granicą, m.in. British Aerospace, Aliena-Marconi, Thames Water Authority, Severn Trent Water Authority, ABB, Delft Hydraulics, Lyonnaise des Eaux. Zainteresowania badawcze Mieczysława Brdysia obejmowały zagadnienia z obszaru teorii sterowania jak: modelowanie, optymalizacja, sterowanie hierarchiczne złożonymi systemami, zdecentralizowana estymacja i regulacja oraz sterowanie nieliniowymi procesami w warunkach niepewności, adaptacyjna technika predykcyjna, sterowanie predykcyjne dynamicznymi systemami hybrydowymi, systemy wspomagania decyzji, ocena ryzyka w podejmowaniu decyzji i sterowaniu, sterowanie inteligentne oparte na sieciach neuronowych i logice rozmytej. W ostatnich latach prowadził badania natury podstawowej, które obejmowały również hierarchiczne warstwowe i rozproszone oraz
Mieczysław Adam Brdyś urodził się 24 grudnia 1946 r. w Poznaniu. W 1965 r. ukończył naukę w renomowanej szkole średniej – Śląskich Technicznych Zakładach Naukowych w Katowicach. W 1970 r. ukończył studia na Wydziale Elektroniki Politechniki Warszawskiej uzyskując dyplom magistra inżyniera. Studiował również matematykę teoretyczną na Uniwersytecie Warszawskim. Po studiach podjął pracę w Instytucie Automatyki PW. Pracę doktorską na temat systemów sterowania obronił na Wydziale Elektroniki Politechniki Warszawskiej w 1974 r., gdzie pracował, zatrudniony na stanowisku adiunkta. W Instytucie Automatyki prowadził prace badawcze w zespole profesora Władysława Findeisena. Prace te były poświęcone hierarchicznym układom sterowania złożonymi systemami. W 1980 r. uzyskał stopień doktora habilitowanego, również na Wydziale Elektroniki Politechniki Warszawskiej, za rozprawę Teoria hierarchicznych układów sterowania dla złożonych procesów wolnozmiennych. Od 1981 r., a potem od września 1984 r. do końca stycznia 1985 r. kontynuował pracę pod kierunkiem profesora Władysława Findeisena w Instytucie Automatyki na stanowisku docenta. W 1992 r. uzyskał tytuł profesora, a rok później – tytuł profesora zwyczajnego. Przez wiele lat swojej kariery Mieczysław Brdyś pracował poza krajem. Od października 1977 r. do kwietnia 1978 r. pracował jako assistant professor w Department of Electrical Engineering, University of Minnesota, prowadząc wykłady i seminaria dla doktorantów oraz prace badawcze dotyczące hierarchicznych systemów sterowania. Jednocześnie prowadził konsultacje w Honeywell Systems and Research Centre w Minneapolis. Od września 1983 r. do sierpnia 1984 r. pracował jako visiting senior research fellow w Control Engineering Centre, City University w Londynie. Realizował badania w ramach indywidualnego grantu, finansowane przez UK Science and Engineering Research Council. Od lutego 1985 r. do lutego 2000 r. pracę w Instytucie Automatyki Politechniki Warszawskiej łączył z pracę na zagranicznych uniwersytetach. W latach 1985–1988 prowadził badania jako senior research fellow na De Montfort University, School of Electronic and Electrical Engineering, Water Systems
92
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
wieloagentowe struktury i algorytmy dla syntezy inteligentnych systemów monitorowania, sterowania i ochrony w systemach infrastruktury krytycznej; monitorowanie krzepkie, diagnostykę i odporne na uszkodzenia sterowanie predykcyjne; miękko przełączane krzepko dopuszczalne optymalizujące sterowanie predykcyjne obiektami w szerokim zakresie stanów operacyjnych, sterowanie nadzorujące i stabilność zdarzeniowej dynamiki hybrydowej. Wyniki tych badań znalazły zastosowanie między innymi w przemysłowych procesach chemicznych, systemach wodnych (systemach zaopatrzenia w wodę, biologicznych oczyszczalniach ścieków), systemach obronnych, silnikach paliwowych, napędach elektrycznych i w robotyce. Wybrane publikacje – Brdyś M. – Zbiór zadań z programowania matematycznego, Wyd. Polit. Warsz., Warszawa 1979 – Brdyś M. – Teoria hierarchicznych układów sterowania dla złożonych procesów wolnozmiennych, Wyd. Polit. Warsz., Warszawa 1980 – Findeisen W., Bailey F.N., Brdyś M., Malinowski K., Tatjewski P., Woźniak A. – Control and Coordination in Hierarchical Systems, J. Wiley & Sons (International Series on Applied Systems Analysis, vol. 9, 1980) – Brdyś M., Ruszczyński A. – Metody optymalizacji w zadaniach, Wydawnictwa Naukowo-Techniczne, Warszawa 1985 – Brdyś M.A., Malinowski K. (red.) – Computer aided control system design. Methods, tools and related topics, World Scientific Publishing, Singapore 1994 – Brdyś M.A., Ulanicki B. – Operational control of water systems. Structures, algorithms, and applications, Prentice Hall, 1994 – Brdyś M.A., Tatjewski P. – Iterative algorithms for multilayer optimizing control, Imperial College Press, 2005
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015
1946 – 2015 Z wielkim smutkiem dowiedziałem się o śmierci Mietka. Bylem z Nim w jednej grupie przez całe studia na Wydziale Elektroniki Politechniki Warszawskiej i razem skończyliśmy automatykę. Był jednym z najlepszych studentów, jednym z niewielu, którzy potrafili rozwiązać „złośliwe” zadania, które – w dobrej wierze – dawali nam niektórzy profesorowie, których po tylu latach coraz bardziej cenimy, bo chcieli nas czegoś nauczyć i chyba im się udało. Poza tym był wspaniałym kolegą, a jeśli się już z kimś zaprzyjaźnił, to był wspaniałym przyjacielem. Potem, właściwie przez cały czas po studiach, miałem kontakt z Mietkiem, przed wypadkiem i po wypadku, najpierw w kraju, a potem poza krajem, a nawet uczestniczyłem we wspólnym projekcie. Podziwiałem, jak wszyscy, jego hart ducha, siłę wewnętrzną, motywację i wielkie osiągnięcia. Był znakomitym ambasadorem polskiej automatyki i nas wszystkich, bo nigdy nie ukrywał, że jest „automatykiem z Polski”. Cześć Jego pamięci! prof. Janusz Kacprzyk, Instytut Badań Systemowych PAN
Odejście prof. Brdysia to ogromna strata. Znałem go bardzo dobrze od wielu lat, często spotykałem właśnie na konferencjach i kongresach IFAC’owskich. Opublikował też kilka artykułów w Applied Mathematics and Computer Science, przy czym jeden aktualnie oczekuje na druk. Chętnie też recenzował artykuły dla AMCS. Pracując od wielu lat w Anglii aktywnie współpracował z wieloma zespołami w kraju – w Warszawie i Krakowie. Od kilku lat pracował też na Politechnice Gdańskiej, gdzie wypromował kilku doktorów. Był wspaniałym kolegą i naukowcem. Cześć Jego pamięci! prof. Józef Korbicz, Uniwersytet Zielonogórski
Prof. Mieczysław Brdyś był prawdziwym naukowcem, prawdziwym automatykiem i prawdziwym inżynierem. prof. Zbigniew Lubośny, Politechnika Gdańska
Niespodziewanie dotarła do mnie smutna wiadomość o śmierci Prof. Mietka Brdysia. Dla nas na Politechnice Gdańskiej był współpracownikiem, kolegą, a dla niektórych przyjacielem. Chociaż byliśmy prawie rówieśnikami, był dla mnie zawsze nauczycielem. Po raz pierwszy spotkaliśmy się przed laty, kiedy był recenzentem mojej rozprawy doktorskiej. Potem spotykaliśmy się sporadycznie na konferencjach, sympozjach. I pod koniec lat dziewięćdziesiątych ubiegłego stulecia rozpoczęła się nasza współpraca. Impulsem były podobne obiekty aplikacji w badaniach – systemy środowiskowe. Jego wiedza i profesjonalizm, upór i cierpliwość, obowiązkowość i wyrozumiałość były zawsze źródłem różnorakiej inspiracji. Zespół Inteligentnych Systemów Sterowania i Wspomagania Decyzji a potem Katedra Inżynierii Systemów Sterowania na Politechnice Gdańskiej są efektami jego wytrwałych i konsekwentnych działań dla rozwoju automatyki jako obszaru badawczego na Politechnice Gdańskiej. Pierwsze doktoraty, habilitacja naszej Katedry niosą w sobie wkład jego pasji badawczej i wytrwałości. Trudno przyzwyczajać się do jego nieobecności. Zawsze pozostanie w mojej pamięci jako mój Nauczyciel i Mistrz. Cześć jego pamięci prof. Kazimierz Duzinkiewicz Politechnika Gdańska
93
POLECANE KSIĄŻKI
AutoCAD 2016/LT2016/360+ Kurs projektowania parametrycznego i nieparametrycznego 2D i 3D Część piąta – Metody skutecznego zdawania egzaminu AutoCAD Certified Professional – to praktycznie próbny egzamin, który obejmuje kluczowe techniki i grupy zagadnień. Jest poświęcony metodyce procesu przygotowań i zdawania egzaminu certyfikacyjnego. Książka zawiera materiał pozwalający Czytelnikowi samodzielnie projektować bez konieczności dodatkowego szkolenia. Jej zakres jest zgodny z najnowszymi programami kursów i egzaminów certyfikacyjnych autoryzowanych przez producenta programu AutoCAD – firmę Autodesk. Jest przewodnikiem po typowych szkoleniach (Learning Paths). Czytelnik znajdzie tu przede wszystkim starannie przemyślane ćwiczenia i zadania kontrolne, opracowane na podstawie wieloletniego doświadczeniu Autora, zarówno dydaktycznym, jak i zdobytym w przemyśle. Integralną częścią książki są przykłady i zadania, które można nieodpłatnie pobrać z zakładki ze strony internetowej Wydawnictwa. Podręcznik będzie doskonałą pomocą dla studentów wyższych lat studiów technicznych, konstruktorów, inżynierów i projektantów zaawansowanych konstrukcji.
Podręcznik Andrzeja Jaskulskiego AutoCAD 2016/ LT2016/360+ Kurs projektowania parametrycznego i nieparametrycznego 2D i 3D, wydany we wrześniu 2015 r. nakładem Wydawnictwa Naukowego PWN, zawiera kompletny kurs ułatwiający przygotowanie do egzaminu certyfikacyjnego AutoCAD Certified Professional.
AutoCAD to program tworzony i rozpowszechniany przez firmę Autodesk, stosowany do dwuwymiarowego (2D) i trójwymiarowego (3D) komputerowego wspomagania projektowania. Pierwotnie wykorzystywany był tylko przez mechaników, jednak z czasem został rozszerzony i aktualnie jest doskonałym narzędziem projektantów również innych branż.
cinek, okrąg, elipsa, prosta, splajn i łuk) oraz obiektów złożonych (polilinia, wielokąt, obiekty tekstowe, tabele, wypełnienia itp.). Na zakończenie – zaawansowane techniki wykonywania i wydruku dokumentacji. Część druga – Parametryczne projektowanie 2D – omawia nowe możliwości programu AutoCAD dostępne począwszy od wersji 2010. Rysunki (modele 2D) są parametryczne, jeżeli są opisane za pomocą parametrów, których modyfikacja powoduje zmianę obiektu. Obiekty są parametryczne dzięki systemowi więzów wymiarowych i geometrycznych, które mają postać zależności ograniczających swobodę ruchu obiektów (odbierające obiektom tzw. stopnie swobody). Część trzecia – Podstawy modelowania 3D – omawia zasady pracy w przestrzeni trójwymiarowej, możliwej jedynie w pełnej wersji programu AutoCAD. Omówiono tu charakterystyczne dla projektowania 3D tematy – układy współrzędnych, modele bryłowe i powierzchniowe, rzutowanie. Część czwarta – Podstawy usługi sieciowej i systemu AutoCAD 360 – jest wzorowana na zajęciach laboratoryjnych AC2241-L oraz AC4127-L (Autodesk 360 with AutoCAD 360 Web/Mobile How Powerful Are These Tools), jakie autor prowadził na Autodesk University 2013 w Las Vegas. Pod nazwą AutoCAD 360 kryją się dwa narzędzia CAD: program CAD oraz usługa sieciowa (Web Service) umożliwiająca współbieżną pracę zespołu projektantów. Omówione zostały także techniki i narzędzia typu Cloud Computing, w tym w szczególności metody pracy za pomocą najnowszych wersji AutoCAD 360 dla urządzeń przenośnych: iPad, iPhone, smartfony z systemem operacyjnym Android itp. Należy pamiętać, że systemy Cloud Computing, które nie są instalowane na komputerze użytkownika, praktycznie podlegają ciągłej modyfikacji.
„Gruntowne opanowanie materiału z podręcznika daje wiedzę wystarczającą do zdania egzaminu i uzyskania certyfikatu.” Bazując na swojej gruntownej wiedzy i doświadczeniu Autor opracował podręcznik umożliwiający efektywną naukę tworzenia i wydruku parametrycznej i nieparametrycznej dokumentacji 2D i modeli 3D wyrobów dowolnej branży za pomocą programów firmy Autodesk: AutoCAD 2016 lub AutoCAD LT 2016 oraz nowszych, w polskiej lub angielskiej wersji językowej. Książka składa się z pięciu części. Część pierwsza – Nieparametryczne projektowanie 2D – stanowi blisko 3/4 objętości tego ponad 1000-stronicowego tomu. Zawiera materiał, którego opanowanie umożliwia przygotowanie klasycznej dokumentacji projektowej w rzutach płaskich o dowolnym stopniu złożoności. Omówiono tu podstawy środowiska AutoCAD, operacje konfiguracyjne, tworzenie projektów i zarządzanie szablonami, stosowane współrzędne 2D – kartezjańskie i biegunowe. Dalej wszystko o tworzeniu obiektów podstawowych (od-
94
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
Andrzej Jaskulski, AutoCAD 2016/LT2016/360+ Kurs projektowania parametrycznego i nieparametrycznego 2D i 3D, Wydawnictwo Naukowe PWN, 2015. ISBN: 978-83-01-18259-5 O
B
O
T
Y
K
A
N R 3/ 20 1 5
POLECANE KSIĄŻKI
Autodesk Inventor Professional 2016PL/2016+/Fusion 360 Metodyka projektowania Kolejny podręcznik Andrzeja Jaskulskiego Autodesk Inventor Professional 2016PL/2016+/Fusion 360. Metodyka projektowania, wydany w połowie wrześniu 2015 r. nakładem Wydawnictwa Naukowego PWN, zawiera kurs umożliwiający przygotowanie się do egzaminu certyfikacyjnego Inventor Certified Professional.
Autodesk Inventor to program komputerowy typu CAD tworzony od 1999 r. i rozpowszechniany przez firmę Autodesk. Jest to typ modelera bryłowego służący do zamodelowania projektowanego urządzenia jako modelu 3D. Na podstawie tego modelu moż-
„W książce prezentowana jest autorska koncepcja metodyki nauczania podstaw komputerowo wspomaganego projektowania.”
liwe jest wykonanie rysunków wykonawczych, złożeniowych, poglądowych i innych. Autodesk Inventor został zaprojektowany do pracy z zespołami sięgającymi kilkunastu tysięcy elementów. Obecnie jest doskonałym narzędziem inżynierów, projektantów i konstruktorów różnych branż. Kolejny podręcznik profesora Andrzeja Jaskulskiego, bazujący na gruntownej wiedzy i doświadczeniu Autora, umożliwia naukę projektowania wyrobów (obejmującego także symulację, obliczenia MES i metody analizy klasyczne) oraz zarządzania ich dokumentacją za pomocą programów: Autodesk Inventor Professional 2016 (lub nowszej) oraz Autodesk Fusion 360. Narzędzia dostępne w tych systemach odzwierciedlają wyniki aktualnych badań z zakresu projektowania i jego koncepcji merytorycznych i cały czas ewoluują. Prezentowany podręcznik, podobnie jak ten o oprogramowaniu AutoCAD, to ponad 1000-stronicowy tom. Organizacja treści jest inna – całość została podzielona na 39 rozdziałów. Wartościowym dodatkiem jest ze-
stawienie wybranych pozycji bibliograficznych, tematycznie ściśle powiązanych z poruszanymi w książce metodami projektowana oraz wcześniejszymi wersjami oprogramowania, obrazujących jednocześnie rozwój systemów CAD w Polsce, uwzględniając niekwestionowany udział autora podręcznika w tym procesie. Ważnym składnikiem jest bardzo obszerny skorowidz haseł. Zawartość programowa podręcznika jest zgodna z angielskojęzycznymi oficjalnymi materiałami szkoleniowymi AOTG (Autodesk Official Training Guide) opracowywanymi od 2011 r. Układ podręcznika umożliwia realizację typowych szkoleń (Learning Paths). Zaprezentowane zostały metody modelowania hierarchicznego opartego na cechach
Andrzej Jaskulski, Autodesk Inventor Professional 2016PL/2016+/Fusion 360. Metodyka projektowania, Wydawnictwo Naukowe PWN, 2015. ISBN: ISBN: 978-83-01-18286-1
dr hab. inż. Andrzej Jaskulski, prof. UWM Absolwent Wydziału Samochodów i Maszyn Roboczych Politechniki Warszawskiej. Obecnie pracuje na Wydziale Nauk Technicznych na Uniwersytecie Warmińsko-Mazurskim w Olsztynie. Jest doradcą użytkowników i dostawców Komputerowych Systemów Inżynierskich oraz autorem wielu artykułów i książek z dziedziny CAD, a także współautorem polskich wersji parametrycznych programów CAD. Jest jednym z najlepszych specjalistów w Polsce w dziedzinie metodyki parametrycznego projektowania 2D i 3D. Ma status Autodesk Authorized Author. Jako ekspert SME (Subject Matter Expert) bierze udział w opracowywaniu polskich wersji programu AutoCAD. Na podstawie własnych podręczników prowadzi od 1993 r. szkolenia w kierowanym przez siebie Autoryzowanym Centrum Szkolenia Autodesk. Na autorskim blogu (http://cadaj.blogspot.com/) i kanale YouTube zamieszcza regularnie liczne wideoprezentacje poświęcone technikom CAD.
konstrukcyjnych FBM (Feature-Based Modeling) i swobodnego SFM (Solid Freeform Modeling) realizowanego klasycznie oraz metodą Przetwarzania w chmurze – Cloud Computing. Zawiera omówienie obiektów inteligentnych wraz z techniką iCopy oraz wewnętrznym językiem i podsystemem programowania iLogic, a także moduły automatyzujące proces projektowania typowych części i zespołów – Design Accelerator. Czytelnicy znajdą tu omówienie narzędzi analitycznych – tradycyjnych i wytrzymałościowych MES. Zostaną również zapoznani z podstawami systemu Autodesk Fusion 360. Podręcznik jest uzupełniony starannie przemyślanymi ćwiczeniami i zadaniami kontrolnymi, które są wynikiem wieloletniego doświadczeniu Autora, zarówno dydaktyczno-badawczego, jak i zdobytego w przemyśle. Na dołączonej do książki płycie CD zawarte zostały liczne przykłady, zadania i elementy konfiguracyjne, które nie występują w oryginalnym programie. Książka stanowi doskonałą pomocą dla studentów wyższych lat studiów technicznych, konstruktorów, inżynierów i projektantów zaawansowanych konstrukcji.
95
rules o Press onach w tym ione
POLECANE KSIĄŻKI
Introduction to Quantum Metrology. Quantum Standards and Instrumentation Monografia Waldemara Nawrockiego stanowi pierwsze w anglojęzycznej literaturze światowej kompleksowe ujęcie zagadnień metrologii kwantowej. Książka liczy 279 stron – wstęp, 12 rozdziałów i skorowidz. Ilustrowana jest schematami, wykresami, tabelami i fotografiami urządzeń pomiarowych.
Pierwszy rozdział zawiera podstawy teoretyczne metrologii kwantowej. Oszacowano w nim granice niepewności pomiarów na podstawie zasady nieoznaczoności Heisenberga oraz rozdzielczości energetycznej pomiaru. Rozwój systemów miar, aż do obowiązującego Międzynarodowego Układu Miar SI przedstawiono w rozdziale drugim. W kolejnym rozdziale zaprezentowano prace zmierzające do zdefiniowania nowego ujęcia systemu miar SI, w miejsce dotychczasowego opartego częściowo na wzorcach materialnych. W nowym systemie o nieoficjalnej nazwie The Quantum SI, jednostki miary będą określone przez podstawowe stałe fizyczne i stałe atomowe.
P
O
M
I
A
R
Wybitny polski metrolog, długoletni profesor Politechniki Poznańskiej, autor kilkunastu książek i skryptów akademickich z dziedziny elektronicznych i komputerowych systemów i czujników pomiarowych. Zorganizował w Poznaniu unikalny cykl międzynarodowych konferencji Quantum Metrology, podczas których najnowsze osiągnięcia prezentowało wielu zaproszonych czołowych naukowców, w tym noblista prof. Klaus von Klitzing – odkrywca kwantowego efektu Halla. Twórczo wykorzystał bogatą wiedzę uczestników cyklu sympozjów oraz własne studia i badania w dziedzinie elektroniki kwantowej, w tym w termometrii szumowej.
W rozdziałach 4, 6, 9, 10, 11 i 12 przedstawiono podstawy teoretyczne wzorców kwantowych szeregu jednostek miar oraz opis realizacji wzorców, m.in. kwantowy wzorzec napięcia stałego i przemiennego (z wykorzystaniem zjawiska Josephsona), wzorzec rezystancji elektrycznej (wykorzystujący kwantowe zjawisko Halla), wzorce częstotliwości i zegary atomowe, interferometry laserowe jako kwantowe wzorce długości, skaningowe mikroskopy próbkujące, w tym skaningowe mikroskopy tunelowe oraz mikroskopy sił atomowych. W rozdziałach 5, 8 i 4 omawiane są wysokoczułe podzespoły krioelektroniczne – detektory strumienia magnetycznego SQUID, tranzystory tunelowe SETT oraz przetworniki napięcie-częstotliwość (o współczynniku 500 MHz/µV). Całość uzupełniono przykładami zastosowania tych podzespołów. Opisane detektory SQUID są najczulszymi detektorami ze wszystkich wielkości fizycznych (według kryterium porównania – rozdzielczość energetyczna detektora). Strona edycyjna i językowa książki nie budzą zastrzeżeń. Treść kolejnego wydania powinna być uzupełniona o ciągle aktualne wartości stałych fizycznych wraz z ich współczynnikami korelacji, jakie są publikowane regularnie przez amerykański National Institute of Standards and Technology pod auspicjami CODATA. Warto też uzyskać zgodę na umieszczenie w książce opisów i fotografii najnowszych stanowisk z ośrodków prowadzących fundamentalne badania w dziedzinie metrologii kwantowej, np. publikowanych w sprawozdaniach niemieckiego PTB, angielskiego NPL lub amerykańskiego NIST, które uzupełnią wiedzę o rozwiązaniach znajdujących się w Głównym Urzędzie Miar, jak kwantowy wzorzec napięcia i kwantowy wzorzec oporu elektrycznego. W monografii propagowane jest nowe podejście do metrologii, kładące duży nacisk na jej związek z współczesną fizyką. Autor przedstawia teorię zjawisk kwantowych sto-
Waldemar Nawrocki, Introduction to Quantum Metrology. Quantum Standards and Instrumentation: Springer International Publishing, 2015, ISBN: 978-3-319-15668-2; DOI 10.1007/978-3-319-15669-9
96
prof. dr hab. inż. Waldemar Nawrocki
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
sowanych w teorii pomiarów oraz wyniki własnych studiów i badań. W książce gruntownie omówiono kwantowe wzorce pomiarowych wielkości elektrycznych, masy, długości, czasu i częstotliwości. Jest to szczególnie istotne dla stale rozwijających się nowych technologii i nanotechnologii. Gruntowna prezentacja zastosowania zjawisk kwantowych do budowy wzorców kwantowych i wysokoczułych podzespołów elektronicznych czyni książkę przydatną nie tylko dla fizyków i metrologów, ale i dla bardziej szerokiego grona czytelników. Książka pomoże zrozumieć i wdrożyć do dydaktyki akademickiej, badań naukowych i do stosowania w technologii opracowywany obecnie nowy system jednostek Quantum SI oparty na stałych fizycznych i zjawiskach wewnątrzatomowych. Monografia stanowi istotny wkład Polski w rozwój i upowszechnianie wiedzy o aktualnym stanie metrologii kwantowej na świecie.
Zygmunt Warsza Przemysłowy Instytut Automatyki i Pomiarów PIAP Polskie Towarzystwo Metrologiczne O
B
O
T
Y
K
A
N R 3/ 20 1 5
POMIARY AUTOMATYKA ROBOTYKA, R. 19, Nr 3/2015
Kalendarium wybranych imprez Nazwa konferencji
Data
Miejsce
XX Międzynarodowe Seminarium Metrologów MSM 2015
21–24 / 09 2015
Rzeszów, Iwonicz Zdrój Polska
8th IEEE International Conference on Intelligent Data Acquisition and Advanced Computing Systems: Technology and Applications IDAACS’2015
24–26 / 09 2015
Warszawa Polska
www: http://idaacs.net/2015/ mail: orgcom@idaacs.net
IEEE/RSJ International Conference on Intelligent Robots and Systems
28 / 09 – 3 / 10 2015
Hamburg Niemcy
www: www.iros2015.org/ mail: info@iros2015.org
6–09 / 10 2015
Andrychów Polska
XV Konferencja Automatyzacji I Eksploatacji Systemów Sterowania i Łączności ASMOR 2015
7–9 / 10 2015
Władysławowo Polska
7th International Joint Conference on Computational Intelligence IJCCI 2015
12–14 / 11 2015
Lizbona Portugalia
www: www.ijcci.org/ mail: ijcci.secretariat@insticc.org
International Workshop on Design and Analysis of Embedded Systems DAES 2015
19–20 / 11 2015
Žilina Słowacja
www: www.daes.uz.zgora.pl/ mail: t.gratkowski@iie.uz.zgora.pl
13th Conference Dynamical Systems Theory and Applications DSTA 2015
7–10 / 12 2015
Łódź Polska
www: www.dys-ta.com/ mail: secretariat2015@dys-ta.com
XX Konferencja NaukowoTechniczna Automatyzacja – Nowości I Perspektywy Automation 2016
2–4 / 03 2016
Warszawa Polska
12–15 / 06 2016
Łagów Lubuski Polska
1–3 / 06 2016
Reims Francja
21–24 / 06 2016
Monachium Niemcy
International Conference on Man-Machine Interactions ICMMI 2015
Systemy Pomiarowe w Badaniach Naukowych i w Przemyśle SP´2016 4th IFAC Conference on Intelligent Control and Automation Sciences ICONS 2016 47th International Symposium on Robotics ISR 2016
Informacje dodatkowe www: http://msm15.prz.edu.pl/ mail: kmisd@prz.edu.pl
www: http://icmmi.polsl.pl/ mail: icmmi@polsl.pl
www: www.asmor.amw.gdynia.pl/
www: www.piap.pl/automation mail: konferencja@piap.pl
www: www.sp2016.ime.uz.zgora.pl mail: r.rybski@ime.uz.zgora.pl
www: http://icons2016.univ-reims.fr/ mail: icons2016@univ-reims.fr
www: www.ifr.org/events/isr/
97
KONFERENCJE | RELACJA
Komputerowe Wspomaganie Projektowania, Wytwarzania i Eksploatacji Konferencja, organizowana regularnie co rok, w ostatnich latach w Juracie lub Szczyrku, ma ugruntowaną w Polsce pozycję. Jej celem jest stworzenie szerokiego forum, które umożliwi wymianę informacji i doświadczeń wśród przedstawicieli dziedzin związanych z komputerowym wspomaganiem projektowania, wytwarzania i eksploatacji, które coraz mocniej splatają się i przyczyniają się do tworzenia innowacyjnych zaawansowanych rozwiązań technicznych. W ostatnich latach systemy komputerowego wspomagania prac inżynierskich rozwijają się bardzo dynamicznie, są udoskonalane, rosną ich możliwości i zakres zastosowania. Nowe technologie związane z przetwarzaniem ogromnej ilości informacji we współczesnym życiu nabierają coraz większego znaczenia. Stosowane przez inżynierów narzędzia komputerowe ułatwiają wykonywanie prac projektowych i przyczyniają się do poprawy osiąganych rezultatów. Przedsiębiorstwa muszą być coraz bardziej konkurencyjne, muszą minimalizować koszty produkcji, a jednocześnie dążyć do maksymalizacji jakości wytwarzanych produktów. Jedyną drogą zwiększenia konkurencyjności i atrakcyjności na współczesnym rynku pracy jest ustawiczne kształcenie pracowników przez całe życie. Jest to działanie długofalowe, wymagające ciągłej aktualizacji, ale dające wymierne korzyści ekonomiczne. W konferencji biorą udział przedstawiciele wiodących uczelni technicznych i ośrodków naukowych, a także pracownicy W dniach 11–15 maja zakładów przemysłowych i produkcyjnych. Są to liczni użyt2015 r. odbyła się w Juracie kownicy systemów XIX Międzynarodowa komputerowych, którzy stosują Szkoła Komputerowego oprogramowanie typu CAD do badań – symulacji i weryfikacji Wspomagania Projektowania, hipotez oraz do projektowania Wytwarzania i Eksploatacji. nowych rozwiązań technoloOrganizatorem konferencji gicznych. Wśród uczestników konferencji są również twórcy był Wydział Mechatroniki metod i procedur komputeroi Lotnictwa Wojskowej wego wspomagania, jak rówAkademii Technicznej nież producenci sprzętu oraz autorzy oprogramowania. w Warszawie. Funkcję przewodniczącego Komitetu Naukowego pełnił prof. dr hab. inż. Radosław Trębiński, natomiast kierownikiem Biura Organizacyjnego Szkoły był dr inż. Jan Szczurko. Organizatorzy systematycznie rozszerzają profil tematyczny konferencji, dostosowując go do dynamicznie zmieniających się kierunków rozwoju nauk związanych z szeroko rozumianym komputerowym wspomaganiem projektowania, wytwarzania i eksplo-
98
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
atacji, dzięki czemu konferencja gromadzi coraz większą liczbę uczestników. Umożliwia to wymianę doświadczeń. W programie znalazły się wykłady i referaty tematyczne, a także – zgodnie z wieloletnią tradycją – warsztaty, podczas których uczestnicy zapoznali się z ofertą producentów i dystrybutorów oprogramowania komputerowego i dedykowanego dla niego sprzętu komputerowego. Podczas zajęć warsztatowych zaprezentowano: – Metody tworzenia dokumentacji w programie AutoCAD (obszar modelu/obszar kreślenia); – Rozwój pomocy rysunkowych programu AutoCAD; – Robot Studio – środowisko do programowania robotów produkcyjnych w trybie off-line. Tematyka ta spotkała się z dużym zainteresowaniem uczestników Szkoły. Wśród tematów prezentowanych referatów (a było ich aż 115) należy wymienić m.in. takie obszary, jak automatyka i robotyka, mechanika i mechatronika, systemy diagnostyczne i pomiarowe, modelowanie systemów i obiektów dynamicznych, optymalizacja konstrukcji oraz bezpieczeństwo maszyn. Celem konferencji była integracja środowisk naukowych i badawczych oraz prezentacja doświadczeń w dziedzinie teoretycznych i praktycznych aspektów rozwiązywania problemów obejmujących tę tematykę. Zgłoszone artykuły, zakwalifikowane po pozytywnej recenzji przez Komitet Naukowy, a następnie zaprezentowane podczas obrad Szkoły, zostały opublikowane w miesięczniku naukowo-technicznym Mechanik, nr 7/2015. Kolejna, XX Międzynarodowa Szkoła Komputerowego Wspomagania Projektowania, Wytwarzania i Eksploatacji, odbędzie się w dniach 16-20 maja 2016 r.
Maciej Trojnacki – uczestnik imprezy
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
KONFERENCJE | RELACJA
XIX Konferencja Automatyków Rytro 2015 Ta jedyna w swoim rodzaju konferencja gości przedstawicieli różnych środowisk związanych z automatyką – jednostek naukowych, administracji państwowej, przemysłu, firm prowadzących działalność badawczo-rozwojową, integratorów, prasy branżowej. Hasło przewodnie XIX konferencji OZE, efektywność energetyczna i ochrona środowiska – wyzwania dla automatyków towarzyszyło większości wystąpień. Patronat honorowy nad tym wydarzeniem objął Wojewódzki Fundusz Ochrony Środowiska i Gospodarki Wodnej w Krakowie. O wysoki poziom naukowy konferencji zadbał prof. dr hab. inż. Ryszard Tadeusiewicz pełniący rolę patrona merytorycznego. Obrady konferencji podzielono na dwie następujące po sobie części. Podczas pierwszej części spotkania głos zabrali przedstawiciele nauki oraz WFOŚiGW poruszając tematy doskonale wpisujące się w przewodnią myśl: – prof. dr hab. inż. Ryszard Tadeusiewicz – Co się kryje pod hasłem »smart city« i jakie konsekwencje będzie miało wdrażanie tej idei? – prof. dr hab. inż. Leszek Trybus – Jak obecnie uczy się energetyków sterowania blokiem energetycznym – prof. dr hab. inż. Jan Maciej Kościelny – Inteligentny system zapobiegania awariom IAPS – prof. dr hab. inż. Tadeusz Skubis – Metody badań właściwości magnetycznych materiałów nowej generacji – prof. dr hab. inż. Ireneusz Soliński – Laboratorium Wiatrowo-Słoneczne na Wydziale Górnictwa i Geoinżynierii Akademii Górniczo-Hutniczej w Krakowie
W dniach 19–20 maja 2015 r. odbyła się kolejna konferencja, która pełni ważną rolę forum transferu wiedzy między nauką i przemysłem. Głównym organizatorem konferencji była firma SKAMER – Automation Control Measurement z Tarnowa.
– prof. dr hab. inż. Tomasz Stapiński – Nowe trendy w fotowoltaice – fakty i mity – dr inż. Janusz Teneta – Automatyka w systemach fotowoltaicznych – dr inż. Szczepan Moskwa – Elektroenergetyka typu SMART – ciągłość zasilania i efektywność energetyczna – dr inż. Andrzej Izworski – Rola Wydziału Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej w kształceniu automatyków – mgr inż. Józef Kała – Dofinansowanie zadań związanych z poprawą efektywności energetycznej ze środków Wojewódzkiego Funduszu Ochrony Środowiska w Krakowie w 2015 r.
W drugiej części konferencji o swoich dokonaniach, sukcesach i planach, prezentując nowości produktowe, interesujące aplikacje oraz ważne wydarzenia, mówili jej organizatorzy – wiodące firmy z obszaru automatyki – ABB, DANFOSS, EATON, EMERSON, HIT – Kody Kreskowe, JUMO, LIMATHERM Sensor, PEPPERL+FUCHS, SKAMER-ACM, TECHNOKABEL, TURCK oraz WIKA. Wszystkie prezentacje nawiązywały do przewodniego hasła konferencji. Również podczas paneli dyskusyjnych głównymi tematami były odnawialne źródła energii oraz problemy ochrony środowiska i sposoby poprawy efektywności energetycznej w przemyśle – adresatami postawionych pytań i problemów byli przedstawiciele wymienionych firm. Niekiedy odpowiedzi na te pytania można było znaleźć na stoiskach, jakie przygotowały firmy – zaprezentowano tam wybrane produkty i przygotowano liczne materiały promocyjne. Konferencja Automatyków odbyła się w położonym w uroczej dolinie Wielkiej Roztoki hotelu Perła Południa, należącego do Centrum Rekreacji i Sportu – jednego z największych i najbardziej znanych tego typu obiektów w Beskidzie Sądeckim. W spotkaniu wzięło udział około 250 osób. Kolejna XX Konferencja Automatyków odbędzie się za rok. Firma SKAMER-ACM, główny organizator tego popularnego wśród automatyków wydarzenia już dzisiaj zaprasza na to spotkanie.
dr inż. Małgorzata Kaliczyńska
99
młodzi
innowacyjni
Przemysłowy Instytut Automatyki i Pomiarów PIAP ogłasza
VIII Ogólnopolski Konkurs na
inżynierskie, magisterskie i doktorskie w dziedzinach Automatyka Robotyka Pomiary Zgłoszenie należy przesłać na adres konkurs@piap.pl do dnia 5 lutego 2016 r. Regulamin konkursu i formularz zgłoszeniowy są dostępne na stronie www.piap.pl Autorzy najlepszych prac otrzymają nagrody pieniężne lub wyróżnienia w kategorii prac doktorskich:
I nagroda 3500 zł
II nagroda 2500 zł
w kategorii prac magisterskich:
I nagroda 3000 zł
II nagroda 2000 zł
w kategorii prac inżynierskich:
I nagroda 2500 zł
II nagroda 1500 zł
Wyniki konkursu zostaną ogłoszone podczas Konferencji AUTOMATION w Warszawie, w dniu 3 marca 2016 r. Patronat Komitet Automatyki i Robotyki Polskiej Akademii Nauk Komitet Metrologii i Aparatury Naukowej Polskiej Akademii Nauk Polska Izba Gospodarcza Zaawansowanych Technologii Polskie Stowarzyszenie Pomiarów Automatyki i Robotyki POLSPAR
Patronat medialny Kwartalnik PAR Pomiary Automatyka Robotyka Organizator konkursu
www.piap.pl
Informacji udzielają: Małgorzata Kaliczyńska: mkaliczynska@piap.pl, tel. 22 8740 146
Jolanta Górska-Szkaradek: jgorska-szkaradek@par.pl, tel. 22 8740 191 Bożena Kalinowska: bkalinowska@piap.pl, tel. 22 8740 015
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015
Centrum Szkoleniowe Turck – wsparciem dla uczelni i studentów Założona w 2001 r. przez absolwentów Politechniki Opolskiej firma Turck Sp. z o.o. – polski oddział niemieckiego koncernu – dzisiaj należy do wiodących w kraju w branży automatyki. Członkowie zarządu nie zapominają o swojej macierzystej uczelni. Obecnie zatrudniają około 30 osób – m.in. młodych automatyków, robotyków i mechatroników, którzy w dużej części wywodzą się z tego samego ośrodka akademickiego. Teraz postanowili podzielić się swoją wiedzą i doświadczeniem ze studentami, udostępniając im nowoczesne stanowiska szkoleniowe.
Grupy produktowe firmy Turck
Głównym celem, jaki założono podczas tworzenia Centrum Szkoleniowego, było zaprezentowanie urządzeń w warunkach maksymalnie zbliżonych do przemysłowych, w jakich pracują urządzenia firm Turck oraz Banner. Na powierzchni 100 metrów kwadratowych udostępniono 8 stanowisk szkoleniowych, które umożliwiają testowanie wielu spośród oferowanych produktów. Sala szkoleniowa została wyposażona w dwie miniaturowe linie przemysłowe, na których zaimplementowano kompletne rozwiązania złożone z komponentów obu wymienionych firm. Pozostałe stanowiska szkoleniowe mają charakter modułowy, co zwiększa ich mobilność i pozwala na tworzenie różnych konfiguracji szkoleniowych, a także umożliwia przeprowadzenie wykładów i ćwiczeń bezpośrednio u klienta. Realizowane kursy pozwalają na poznanie urządzeń sensoryki (czujniki obecności i pozycji elementu), systemów i urządzeń sieciowych pracujących na najpopularniejszych protokołach komunikacyjnych (programowalne i nieprogramowalne systemy zdalnych
wejść/wyjść), w tym urządzeń bazujących na protokole IO-Link, a także urządzeń bezpieczeństwa. W nowym centrum organizowane są zarówno szkolenia otwarte – dostępne dla wszystkich zainteresowanych, jak i zamknięte – adresowane do wybranych klientów i pod konkretnie realizowane projekty. Raz w tygodniu stanowiska szkoleniowe są oddawane do dyspozycji studentów Politechniki Opolskiej. Centrum jest udostępniane również pracownikom zagranicznych oddziałów Turck, w szczególności krajów sąsiedzkich. Szkolenia prowadzone są w niewielkich, liczących po 2–3 osoby grupach. W trakcie organizowanych konferencji i seminariów sala może pomieścić nawet 40 osób. Tematyka prowadzonych szkoleń dotyczy czterech grup produktowych: − sensoryka, − technika łączeniowa, − przemysłowe sieci komunikacyjne, − kompletne rozwiązania aplikacyjne.
101
SZKOLENIA powierzchni. Budowa aktywnej części czujnika decyduje o kształcie pola detekcji. Czujniki z płaskim czołem mają strefę czułości o kształcie płomienia zapalonej świeczki. Jest ono niewielkie, zwarte i w miarę precyzyjne. Drugie wykonanie charakteryzuje się szerszym polem detekcji oraz większym zasięgiem przy obudowie tej samej wielkości. Ogólna zasada działania czujników indukcyjnych polega na wytworzeniu przed jego czołem pola elektromagnetycznego o dużej częstotliwości. Element metalowy, wchodzący w strefę detekcji czujnika, zakłóca wyindukowane pole pochłaniając część jego energii. To zakłócenie jest wykrywane przez czujnik, który następnie wystawia sygnał o odpowiedniej wartości cyfrowej. Turck jako pierwsza na świecie firma, wprowadziła na rynek czujniki serii uprox®, charakteryzujące się współczynnikiem korekcji 1 dla wszystkich metali. Innymi słowy, każdy metalowy element jest wykrywany z nominalnej odległości, w odróżnieniu od konwencjonalnych czujników indukcyjnych, które w nominalnej odległości wykrywały wyłącznie stal, a każdy inny metal był wykrywany dopiero z innej, mniejszej odległości. Pojemnościowe czujniki zbliżeniowe działają na zasadzie pomiaru pojemności otwartego kondensatora. Pojemność w stanie spoczynkowym jest stała, a element zbliżający się do czujnika wpływa na jej zmianę. To, jak znacząca zmiana pojemności jest wykrywana, zależy od ustawionej czułości czujnika. Dzięki pomiarowi pojemności możliwe jest wykrywanie obiektów będących przewodnikami oraz izolatorami. Czujniki optyczne mogą wykrywać obiekty z większych odległości. Główna zasada działania polega na współpracy nadajnika – będącego źródłem światła, z odbiornikiem światła. Wiązka światła emitowana przez nadajnik bezpośrednio lub w wyniku odbicia dociera do odbiornika. Długość fal emitowanego światła zwykle odpowiada kolorom – czerwonemu lub podczerwonemu. W praktyce stosowanych jest wiele rodzajów czujników optycznych. Najpopularniejsze z nich to czujniki odbiciowe, przeciwsobne, refleksyjne, laserowe. Czujniki ultradźwiękowe działają na zasadzie emitowania sygnałów dźwiękowych w zakresie długości fali niesłyszalnej dla ludzkiego ucha, które ulegają odbiciu napotykając na element. Wielkością mierzoną jest czas między nadaniem i odebraniem odbitego sygnału dźwiękowego przez czujnik. Na podstawie znanej prędkości rozchodzenia się fali dźwiękowej w gazach oraz zmierzony czas odbicia się fali od elementu, obliczana jest odległość aktywnego czoła czujnika od przeszkody. Enkodery są urządzeniami do pomiaru pozycji obracających się elementów. Mogą służyć zarówno do pomiaru prędkości (enkodery inkrementalne), jak również do pomiaru kąta obrotu (enkodery absolutne) itp. W zależności od rodzaju urządzenia, enkodery mogą wystawiać sygnały w sposób jawny (za pomocą wyjść cyfrowych i analogowych) oraz przy użyciu wybranych protokołów (np. SSI). Urządzeniami do pomiaru odległości są czujniki liniowe. Działają na tej samej zasadzie co enkodery absolutne, z tą różnicą, że element pozycjonujący porusza się po prostej bieżni. Inklinometry są czujnikami położenia względem ziemi. Wyposażone są w czułe układy akcelerometryczne i żyroskopowe, dzięki czemu precyzyjnie mogą określać położenie elementu, na którym są zamontowane względem wybranych osi układu współrzędnych.
Czujniki 100-0 Czujniki przemysłowe 100-1 Pomiar i detekcja przemieszczeń liniowych i kątowych 200-0 Podstawy iskrobezpieczeństwa 500-0 IVu – przemysłowa analiza obrazu Pierwsza grupa to szkolenia z zakresu szeroko rozumianej sensoryki. Omawiane są tutaj wszystkie produkty, których zadaniem jest detekcja oraz pomiary analogowe w aplikacjach przemysłowych. Czujniki przemysłowe są jednymi z podstawowych elementów używanych w przemyśle. Z tego względu w Centrum prowadzone są dwa kursy dotyczące czujnikowej części oferty – 100-0 oraz 100-1. Uczestnicy kursów poznają zasady działania przemysłowych czujników obecności i pozycji elementów oraz ich doboru w zależności od aplikacji. Należy tu wymienić cztery rodzaje czujników: − czujniki obecności elementu: − indukcyjne, − pojemnościowe, − optyczne, − czujniki pozycji elementu: − ultradźwiękowe, − enkodery, − czujniki położenia liniowego, − inklinometry, − czujniki wartości procesowych: − ciśnienia, − temperatury, − przepływu, − czujniki wizyjne. Czujniki zbliżeniowe mają różne kształty, a tym samym różne wielkości pola detekcji, począwszy od miniaturowych czujników M8 z polem detekcji poniżej 1 mm, skończywszy na obudowach prostopadłościennych 75 mm × 75 mm i elemencie aktywnym o średnicy 90 mm – z polem detekcji 100 mm. Najczęściej stosowanymi typami obudów czujników są obudowy cylindryczne z gwintem M8, M12, M18 oraz M30 w dwóch wersjach – część aktywna ma kształt płaskiej powierzchni lub inny kształt, różny od płaskiej
Przegląd najpopularniejszych obudów czujników
102
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015
W aplikacjach procesowych stosowane są głównie czujniki z wyjściami analogowymi – czujniki ciśnienia, temperatury oraz przepływu. Do realizacji szkoleń oznaczonych 100-0, 100-1 oraz 500-0 przygotowane zostały dwa stanowiska. Pierwsze z nich umożliwia testowanie czujników w szybkich aplikacjach. Dzięki elastycznym ramionom możliwy jest montaż nawet czterech różnych czujników z oferty firmy, co pozwala porównać charakterystyki ich pracy dla różnych prędkości obrotowych. Zestaw wyposażono w programowalny enkoder inkrementalny służący jako referencyjna wartość prędkości. Na stanowisku zamontowano też modułowe przetworniki, które mogą pracować w strefach zagrożonych wybuchem, i w efekcie pozwalają na sterowanie kilkoma wyjściami przekaźnikowymi, w zależności od ustawionej prędkości obrotowej. Przetworniki te są m.in. przedmiotem szkolenia 200-0. Drugie stanowisko zawiera automatyczny przenośnik taśmowy, który w realistyczny sposób odzwierciedla transport surowców, półproduktów lub produktów. Na stanowisku o wielkości 185 cm × 80 cm w obiegu zamkniętym przemieszcza się pas transmisyjny. Na jego obwodzie zostały umieszczone czujniki, które umożliwiają realizację różnych działań, jak: − uruchomienie, zatrzymanie i zmianę kierunku pracy przenośnika – podświetlane przyciski pojemnościowe, − sygnalizacja obecności elementu – optyczne czujniki szczelinowe, odbiciowe, refleksyjne, − wykrywanie wysokości elementu – kurtyna pomiarowa EZ-ARRAY™, − pomiar wysokości elementu – czujnik laserowy LE250, − wykrywanie znaczników/markerów etykiet/kontrastu – czujnik R58B z odcięciem tła do szybkich aplikacji, − kontrola wizyjna elementów – czujnik wizyjny z intuicyjnym interfejsem programowania. Budowa stanowiska umożliwia testowanie innych rodzajów urządzeń, które są szeroko stosowane w tego rodzaju aplikacjach. Jednym z elementów stanowiska jest czujnik wizyjny IVu, który jest przedmiotem osobnego programu szkoleniowego 500-0.
Stanowisko do testów czujników w szybkich aplikacjach
Technika łączeniowa 503-0 Wireless – podstawy i kurs zaawansowany W miejscach trudnodostępnych i odległych od jednostek sterujących stosowane są programowalne systemy komunikacji bezprzewodowej wyposażone w interfejs szeregowy, za pośrednictwem którego można monitorować i kontrolować stany I/O zdalnych modułów zainstalowanych nawet w 56 lokalizacjach. Urządzenia SureCross DX80 zastępują kosztowne okablowanie szeroko stosowane przemyśle, rolnictwie, w rozwiązaniach elektrycznych, wodociągowych oraz utylizacji odpadów. System składa się z samodzielnych modułów obsługujących sygnały dwustanowe, analogowe oraz szeregowe, dzięki czemu możliwa jest kontrola m.in. czujników ultradźwiękowych i fotoelektrycznych, pomp, liczników, termoogniw oraz Pt 100. Zagadnienia te są przedmiotem kursu 503-0. W miejscach, w których doprowadzenie zasilania do czujników i urządzeń wykonawczych jest utrudnione ze względu na konieczność częstego nadmiernego zginania kabli zasilających i sygnałowych, powodujących ich uszkodzenie, oraz w miejscach, gdzie wymagana jest szybka wymiana i identyfikacja narzędzia, stosowane są sprzęgła indukcyjne. Sprzęgła w ofercie Turck mogą zasilić urządzenia o łącznej mocy do 12 W. Sprzęgła składają się z nadajnika i odbiornika, które mogą jednostronnie (do sterownika) przesyłać standardowe sygnały cyfrowe DI/DO oraz dwustronnie wymieniać dane z urządzeniami obsługującymi protokół IO-Link.
Moduł DX80 ze zintegrowanymi wejściami i wyjściami
Miniaturowa linia przemysłowa
103
SZKOLENIA dzenia sieciowe specyficzne dla każdego protokołu, bez których większość instalacji nie będzie działała prawidłowo. Podczas szkolenia można zatem sprawdzić w praktyce działanie repeatera sieci Profibus-DP, rezystora terminującego aktywnego, a także switcha ethernetowego w wersji niezarządzalnej lub zarządzalnej. Każde urządzenie typu master może diagnozować połączenia sieciowe oraz dodatkowo parametryzować urządzenia (slave) do niej podłączone. Wspomniane protokoły nie umożliwiają jednak diagnozowania i parametryzowania samych czujników ani aktuatorów podłączonych do urządzeń slave, a jedynie karty lub moduły we/wy. W tym celu opracowano nowoczesny protokół cyfrowy – IO-Link. Omówienie tego standardu zawarte jest w kursie 303-0. Na kolejnym stanowisku znajdują się urządzenia, dzięki którym można poznać funkcjonowanie tego protokołu, omówić sposoby jego integracji. Standard IO-Link jasno określa składowe elementy: master IO-Link – zazwyczaj kilkuportowy moduł umożliwiający podłączenie nawet kilku urządzeń IO-Link. Ponieważ standard ten jest protokołem typu point-to-point, każdy kanał mastera umożliwia podłączenie tylko jednego urządzenia obiektowego. Urządzenia te łączone są za pomocą standardowego, nieekranowanego przewodu 3-żyłowego. Ograniczenie, jakie wynika ze stosowanego standardu to odległość między masterem a urządzeniem IO-Link, która nie może być większa niż 20 m. W ofercie Turck znaleźć można różne rozwiązania dla master IO-Link. Bogaty zestaw modułów komunikacyjnych systemów BLxx pozwala na integrację rozwiązań IO-Link z niemal dowolną siecią przemysłową wyższego poziomu (np. Profinet, Profibus, Ethernet/IP, DeviceNet i inne). Podczas warsztatów praktycznych można sięgnąć po dowolne z urządzeń IO-Link z oferty Turck, tj. czujniki przemieszczeń liniowych, inklinometry, enkodery indukcyjne, czujniki temperatury, ciśnienia lub przepływu. W tej grupie znajdują się również czujniki ultradźwiękowe, kurtyny pomiarowe oraz sprzęgła indukcyjne. Oferta cały czas jest poszerzana i pozwala na praktyczne sprawdzenie możliwości, jakie oferuje ten cyfrowy protokół. W grupie rozproszonych systemów we/wy firma Turck oferuje też klasyczne stacje slave, które mogą pracować pod kontrolą urządzenia nadrzędnego, jakim jest master danej sieci. Jeżeli opracowywana aplikacja
Stanowiska zdalnych układów I/O 300-0 Sieci komunikacyjne – podstawy 301-0 Sieci komunikacyjne – Profibus i Ethernet 303-0 IO-link – podstawy technologii 302-0 CODESYS 2/3 + QVIS 304-0 Stacje I/O w strefach Ex W Centrum Szkoleniowym Turck znajdują się dwa stanowiska w całości dedykowane przemysłowym sieciom komunikacyjnym. Dzięki modułom należącym do tej grupy kilka stanowisk rozszerzono o nowe możliwości komunikacyjne. Na tych stanowiskach prowadzone są szkolenia 300-0 oraz 301-0. Pierwsze z nich wyposażone jest w urządzenia działające w sieci Profibus-DP. Urządzenia typu master (panel HMI z funkcją sterownika PLC oraz sterownik PLC) umieszczone zostały na osobnym stojaku, aby zapewnić modułowość i możliwość szybkiej modyfikacji. Na drugim stojaku znajdują się urządzenia typu slave, które są ze sobą szeregowo połączone dwużyłowym, ekranowanym kablem w fioletowej otulinie. Łączna liczba węzłów (nodów) działających w sieci nie może przekroczyć 127. Standardową sieć o topologii magistrali można podzielić za pomocą urządzeń typu repeater na więcej segmentów. Protokoły komunikacyjne realizujące zadania warstwy fizycznej sieci Ethernet umożliwiają połączenie znacznie większej liczby urządzeń sieciowych w topologiach magistrali, ringu, gwiazdy, drzewa itp. Trzy protokoły sieciowe (Profinet, Ethernet/IP oraz Modbus-TCP) działające w warstwie fizycznej można testować na drugim stanowisku szkoleniowym, które składa się z modułów zdalnych we/wy bazujących na technologii multiprotokol. Połączenie zrealizowano za pomocą dwuparowego kabla komunikacyjnego w zielonej otulinie. Po uruchomieniu sterownika, urządzenia Slave automatycznie wykrywają zastosowany protokół i deaktywują pozostałe dostępne. Liczba urządzeń pracujących w sieci jest określana za pomocą maski podsieci, a każde urządzenie oprócz unikalnych adresów IP musi mieć unikalną nazwę modułu. Stojaki do testowania sieci Profibus-DP oraz sieci Ethernet zawierają moduły z rodzin BL20, BL67, piconet, TBDP, TBEN-L, TBEN-S, FDP20 oraz FEN20. Oprócz samych modułów aktywnych zgromadzono także urzą-
Stanowisko zdalnych układów I/O dla sieci Profibus-DP
104
P
O
M
I
Stanowisko zdalnych I/O dla sieci Ethernet
A
R
Y
•
A
U
T
O
M
A
T
Y
K
A
Stanowisko urządzeń IO-Link oraz SSI
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015
korzysta wyłącznie z jednej stacji, to realizację funkcji sterowania można z powodzeniem powierzyć modułom programowalnym serii BL20/BL67. Korzystając ze środowiska CoDeSys użytkownik w trakcie szkolenia 302-0 poznaje samo oprogramowanie, jak również otrzymuje wiedzę na temat funkcjonowania i poprawnej konfiguracji modułów w tym środowisku. Na jednym ze specjalnie przygotowanych stanowisk możliwe jest przeprowadzenie wielu symulacji, począwszy od najprostszych, po bardziej skomplikowane wykorzystujące transmisję szeregową (RS-232), integrację z systemami identyfikacji RFID (np. głowice RFID lub czytniki kodów kreskowych). W Centrum Szkoleniowym zgromadzono liczne urządzenia, które mogą być stosowane do integracji z modułami programowalnymi. Należą do nich m.in. waga pomiarowa z interfejsem, czytnik kodów kreskowych z interfejsem RS-232, moduły komunikacji bezprzewodowej (Modbus RTU), falownik sterowany analogowo i inne. Wszystko po to, by jak najszerzej poznać możliwości modułów programowalnych. Podczas szkolenia 302-0 omawiane są też możliwości komunikacyjne i integracyjne paneli HMI serii VT250. Seria VT250 to rodzina paneli dotykowych o ekranie 5,7”, z kolorowym wyświetlaczem oraz wbudowanymi funkcjami sterującymi. W zależności od modelu i wersji firmware panel może być masterem sieci Profibus-DP, Profinet, Ethernet/IP, DeviceNet czy CANopen. Każdy z nich, bez względu na wersję, możliwości gwarantuje realizację funkcji komunikacyjnych dla Modbus-TCP (dwa złącza RJ-45 ze zintegrowanym switchem) oraz Modbus-RTU (złącze D-SUB). Do dyspozycji kursantów zgromadzono osiem takich paneli zestawionych w różnych konfiguracjach, co umożliwia ich pełną prezentację, a także łatwą rozbudowę do celów szkoleniowych. Większość paneli umieszczona została razem ze sterownikami PLC firm Siemens (seria 300) i GE Fanuc (seria RX3i), co daje bogate możliwości wizualizacyjne ich pracy, a także pokazuje alternatywę dla stosowania urządzeń typu master w funkcji sterowania. Dzięki bogatym możliwościom komunikacyjnym panele serii VT250 mogą pracować jako konwertery protokołów, co jest jednym z zadań realizowanych w trakcie kursu. Oprócz klasycznych rozwiązań, jakie spotkać można na hali produkcyjnej, Centrum Szkoleniowe wyposażono w stanowisko do badania i testowania modułów serii excom. Jest to jedno z najnowocześniejszych na
Stanowisko do szkoleń z programowania w środowisku CoDeSys oraz QVIS
rynku rozwiązań w zakresie iskrobezpiecznych stacji rozproszonych I/O, opracowane specjalnie z myślą o spełnieniu wymagań użytkowników w przemyśle procesowym. Ośmiogodzinny kurs 304-0 wprowadza w tajniki pracy z takim systemem. W trakcie warsztatów przekazywane są praktyczne wskazówki instalacyjne, konfiguracyjne oraz diagnostyczne. Sam system umożliwia montaż bezpośrednio w strefach Ex 1 i Ex 2, z możliwością obsługi sygnałów także ze strefy Ex 0. Dzięki specjalnej zabudowie stacji excom możliwe jest sprawdzenie w praktyce, jak działa pełny hot swapping, czyli wymiana wszystkich modułów – łącznie z zasilaczem – w trakcie pracy, nie powodując przy tym zatrzymania systemu. Użycie dwóch tzw. segment couplerów SC12Ex umożliwia testowanie pełnej redundancji od najprostszej realizowanej przez sam moduł komunikacyjny (redundancja gateway), przez redundancję linii, aż do redundancji systemowej. Zastosowanie technologii HART over Profibus umożliwia parametryzację urządzeń bezpośrednio na obiekcie. Szeroko jest też omawiana sama technologia FDT/DTM, dzięki której konfiguracja, parametryzacja i diagnostyka stają się prostsze. Na stanowisku ćwiczeniowym, razem ze stacją excom, znajduje się również stacja systemu BL20, która jako jedyna z systemów „produkcyjnych” może pracować w strefie Ex 2.
Stanowisko RFID 400-0 RFID – kurs podstawowy 401-0 RFID – kurs zaawansowany Centrum Szkoleniowe Turck w swoich zasobach ma bogato wyposażone stanowiska do testowania technologii RFID. Każdy uczestnik może sprawdzić, jak taki system działa wykorzystując jedno z dwóch pasm częstotliwości: HF = 13,56 MHz oraz UHF = 865–868 MHz. W zależności od rodzaju aplikacji można dobrać właściwe pasmo, które charakteryzuje się odmiennymi właściwościami w zależności od tego, w jakim środowisku ma być stosowane. W łatwy i ciekawy sposób można uzyskać odpowiedź czy materiał, z którego wykonany jest badany obiekt wpływa na proces identyfikacji oraz oszacować, w jakim stopniu. Testowane są różne próbki materiałowe, m.in. metal, plastik, szkło, drewno. W tym zakresie realizowane są dwa kursy: 400-0 oraz 401-0.
Stanowisko z urządzeniami zdalnych I/O do aplikacji iskrobezpiecznych
Stanowisko z modułami komunikacyjnymi i dwukanałowymi kartami do głowic RFID
105
SZKOLENIA Korzystając z częstotliwości HF (13,56 MHz) można sprawdzać pracę systemu RFID na odległość do około 0,5 m. Mimo niewielkiego zasięgu, częstotliwość ta znakomicie sprawdza się w identyfikacji obiektów transportowanych na przenośnikach taśmowych. Tutaj obiekty poruszają się z reguły w stałej odległości od głowicy HF, zwykle umieszczonej z boku przenośnika. W Centrum Szkoleniowym jedna z głowic HF została zaimplementowana na stanowisku przenośnika taśmowego, gdzie regulując jego prędkość można badać wpływ prędkości na jakość odczytu/zapisu danych na nośniku. Ma to szczególne znaczenie, gdyż ilość danych, jakie głowica ma odczytać/zapisać, prędkość przemieszczania się nośnika przed głowicą RFID oraz odległość nośnika od niej są ze sobą ściśle powiązane i zmiana jednej z tych wielkości pociąga za sobą zmianę dwóch pozostałych. W zależności od wymagań aplikacji można korzystać z różnego rodzaju głowic – od tych najmniejszych w obudowach M18, M30, przez wykonania prostopadłościenne CK40, Q42TWD, Q80 do wersji największych: podłużna o wymiarach 80 mm × 400 mm przeznaczona do bezpośredniego montażu między rolkami przenośnika oraz Q350, która oferuje największy zasięg w paśmie HF – około 0,5 m. Na ostateczny dystans pracy ma również wpływ budowa nośnika. Pasmo UHF charakteryzuje się działaniem na większych odległościach. Tutaj do dyspozycji oddano dwie głowice o zakresach do 6 m (TN865-Q170L200-H1147) oraz do 2 m (TN865-Q120L130-H1147). Pole generowane przez głowicę UHF ma kształt stożka, a jednym z parametrów głowicy jest kąt rozwarcia stożka. Ważną zaletą głowic UHF jest możliwość pracy w trybie „multitag”, która dzięki funkcji Inventory informuje o wszystkich nośnikach znajdujących się w jej polu pracy. Do swobodnego testowania różnych konfiguracji „populacji” nośników zbudowano specjalną bramę, na której umieszczono cztery głowice UHF – każda na ruchomym ramieniu. Ich położenie, swobodnie regulowane pozwala na testowanie układu w różnych konfiguracjach i położeniu głowic względem siebie. Sama brama o szerokości 3,5 m i wysokości 2,5 m stanowi idealne miejsce do testowania przejazdów wózków widłowych w różnych aplikacjach magazynowo-logistycznych. W Centrum udostępniony jest wózek z paletą, na której umieszczono 42 różnego rodzaju skrzynki magazynowe. Każda z nich została ozna-
Przykładowe nośniki RFID HF/UHF
czona co najmniej czterema nośnikami RFID – na każdym boku po minimum jednej sztuce. W sumie jednorazowo przez bramę przejechać może 200 nośników RFID, co daje solidną podstawę do testowania i sprawdzenia jak konfiguracja skrzynek, ich liczba, ułożenie względem siebie oraz względem głowic wpływa na skuteczność i jakość identyfikacji. Czytnik ręczny Brama logistyczna jest zauto„Handheld” matyzowana. Do jej sterowania do zapisu i przeznaczono osobną jednostkę odczytu danych BL67 z programowalnym moduz nośników RFID łem komunikacji BL67-PGHF/UHF -EN. Użytkownik w środowisku CoDeSys v2.x może zrealizować dowolną funkcję obsługi RFID. Oprócz głowic UHF bramę wyposażono w dwa czujniki optyczne pracujące w trybie refleksyjnym, których zadaniem jest informowanie systemu o obecności przedmiotu w „świetle” bramy. Takie zewnętrzne triggery idealnie nadają się do tworzenia i testowania w pełni zautomatyzowanego systemu identyfikacji. Oprócz systemu BL67 brama zawiera panel HMI serii VT250, który pełni rolę mastera sieci Profinet lub Modbus-TCP/Modbus-RTU. W zależności od konfiguracji możliwe są inne wersje obsługujące m.in. protokoły Profibus-DP, CANopen, DeviceNet, Ethernet/IP. Dzięki takiemu rozwiązaniu istnieje prosty sposób na interaktywne sterowanie bramą logistyczną. VT250 realizuje zarówno sterowanie pracą bramy, jak i wizualizację wyników identyfikacji. Wszystkie elementy spięte są za pomocą jednego switcha ethernetowego SE20-84XT-RJ822, do którego podłączony jest również moduł komunikacji radiowej DX80. Umożliwia to bezprzewodową komunikację z bramą, co czyni z niej jeszcze wygodniejsze narzędzie pracy. Wyeliminowano konieczność połączeń kablowych z zewnętrznymi, dodatkowymi urządzeniami kontrolującymi jej pracę lub odbierającymi wyniki systemu identyfikacji.
Brama logistyczna wyposażona w cztery głowice RFID UHF
106
P
O
M
I
A
R
Y
•
A
System BL-Ident® do identyfikacji RFID U
T
O
M
A
T
Y
K
A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
Pomiary Automatyka Robotyka, R. 19, Nr 3/2015
Oprócz fizycznej natury systemu identyfikacji równie ważny jest sposób integracji z systemem nadrzędnym. RFID firmy Turck bazuje na dwóch kartach systemu zdalnych we/wy. Karty te są zawsze dwukanałowe i występują w dwóch wersjach – BLxx-2RFIS-S oraz BLxx-2RFID-A. Pierwsza z nich to wersja uproszczona, umożliwiająca programiście transmisję maksymalnie do 8 bajtów w jednym cyklu. Budowa karty sprawia, że integracja możliwa jest z dowolnym sterownikiem lub modułem programowalnym dostępnym na rynku, a sam proces jest wyjątkowo szybki. Karta „A” to wersja zaawansowana, która umożliwia pracę z dużą ilością danych oraz opcją „multitag”. Do jej obsługi wymagany jest blok funkcyjny PIB, który jest opracowany dla sterowników firmy Siemens oraz modułów programowalnych BLxx-PG firmy TURCK. W zależności od wymagań systemu dowolne z tych urządzeń można podłączyć i przetestować poprawne działanie systemu. W Centrum Szkoleniowym dostępne są na stałe sterowniki serii S7 z jednostkami sterującymi CPU313C-2DP oraz CPU315-2PN/DP, a także CPU1214C. W zasobach znajduje się również sterownik GE Fanuc serii RX3i. Wymienione urządzenia pracują, w zależności od modelu, w sieciach Profinet, Profibus-DP, Modbus-TCP. Dodatkowy stand z modułami programowalnymi Turck serii BLxx-PG umożliwia realizację systemu identyfikacji w wersji stand-alone a także komunikację takiego rozwiązania z systemem nadrzędnym za pomocą protokołów Profibus-DP, Ethernet/IP oraz Modbus-TCP, wkrótce również dla Profinet.
Stanowisko Bezpieczeństwo 501-0 Bezpieczeństwo osób i maszyn Warunki pracy w każdym zakładzie muszą być ergonomiczne i bezpieczne dla pracowników. Minimalne i zalecane wymagania bezpieczeństwa dla maszyn i urządzeń określonego charakteru pracy opisane są w normach i dyrektywach, które muszą być bezwzględnie przestrzegane. Podczas kursu 501-0 prezentowany jest przekrój komponentów systemu bezpieczeństwa wraz z ich zastosowaniem, w połączeniu ze sterownikiem bezpieczeństwa SC/XS26 oraz zgodnie z wymaganiami norm. Przykładowa aplikacja, na której prowadzony jest kurs 501-0, umożliwia symulację pracy przy stanowi-
Stanowisko z urządzeniami systemu bezpieczeństwa
sku zrobotyzowanym. Została przygotowana w sposób umożliwiający jej modyfikację, zmianę parametrów oraz testy urządzeń. Działanie stanowiska polega na załączeniu przenośnika taśmowego transportującego pudełka oraz robota, który je przenosi. Na przenośniku taśmowym w kształcie litery „U” transportowane są pudełka. Pudełko po wjechaniu w pole stanowiska z robotem, przejeżdża przez kurtynę bezpieczeństwa wyposażoną w cztery czujniki do aktywacji chwilowego wyłączenia działania kurtyny (mutingu) i dojeżdża do punktu końcowego, w którym robot przenosi je na drugi koniec przenośnika. Pudełko krąży „w obiegu zamkniętym”. Uruchomienie pracy stanowiska możliwe jest po spełnieniu wszystkich warunków bezpieczeństwa: − wyłączniki bezpieczeństwa nie zostały aktywowane, − czujniki magnetyczne i mechaniczne drzwi potwierdzają ich zamknięcie, − kurtyny bezpieczeństwa są włączone bez alarmu lub są w trybie mutingu, − wszystkie alarmy zostały zresetowane, − czas aktywacji przycisków równoczesnego startu został spełniony. Urządzenia bezpieczeństwa muszą być przez cały czas pracy niezawodne. Wszystkie sygnały sterujące mają zestyki podwójne. Zestyki rozwierne są połączone szeregowo, a zestyki zwierne połączone są równolegle, co każdorazowo gwarantuje otrzymanie pewnego sygnału. Urządzenia bezpieczeństwa są projektowane i montowane zgodnie z kryteriami określonymi przez normy i dyrektywy. Całością stanowiska steruje moduł XS26 z dołączonym modułem przekaźnikowym. Aby uruchomić maszynę należy równocześnie wcisnąć dwa przyciski start. Przy spełnieniu warunku równoczesności sterownik bezpieczeństwa XS26 uruchamia przekaźniki bezpieczeństwa, które uruchamiają proces. Kurtyny bezpieczeństwa są wielowiązkowymi optycznymi czujnikami, składającymi się z nadajnika oraz odbiornika. Odległości między poszczególnymi wiązkami definiują rozdzielczość kurtyny. Miejsce umieszczenia kurtyny bezpieczeństwa jest określona przez odpowiednie normy. Podczas pracy na stanowisku kurtyny mogą być na krótką chwilę wyłączane – tylko w czasie przejeżdżania elementu przez aktywną część kurtyny. Jednak chwilowe wyłączenie kurtyny powinno gwarantować spełnienie wymagań norm bezpieczeństwa. Dla-
Sterownik bezpieczeństwa XS26 z dołączonymi modułami bezpieczeństwa
107
SZKOLENIA
Aplikacja Pick-to-Light
Aplikacja do identyfikacji węży
tego stosowane są czujniki optyczne realizujące funkcję mutingu, która sygnalizowana jest za pomocą białej lampki, wizualizacją lub innym sposobem informowania. Muting tworzony jest za pomocą czterech lub dwóch czujników optycznych. Przykład ułożenia czterech czujników pokazany jest na rysunku. Na każdym urządzeniu muszą być umieszczone przyciski awaryjnego wyłączenia, potocznie zwane „grzybami”. Wciśnięcie takiego przycisku powoduje wyłączenie maszyny oraz sygnalizację wystąpienia sytuacji niebezpiecznej. Firma Banner produkuje przyciski „E-STOP” z kolorowym podświetleniem. W czasie prawidłowej pracy przyciski są podświetlane na pomarańczowo. Po wciśnięciu przycisku, światło zmienia się na migające czerwone, a na pozostałych wyłącznikach podświetlenie zmienia kolor na czerwony ciągły.
Zasada działania mutingu
nej lampki. W przeciwnym przypadku, gdy do gniazda podłączony zostanie niewłaściwy wąż, lampka zaświeci się na kolor czerwony. Stan oczekiwania na podłączenie węża sygnalizowany jest kolorem pomarańczowym. Podobnie, jak w poprzednim zestawie i tutaj wykorzystano modułowy system BL67. Program do identyfikacji nośnika zapisany jest w module gateway programowalnym z funkcją sterownika PLC. Do niego podłączona jest dwukanałowa karta BL67-2RFID-S z podłączoną głowicą, oraz karta BL67-8DO-0.5A-P, do której na zestawie demonstracyjnym podłączona jest lampka, a w warunkach realnej aplikacji mogą być podłączone elektrozawory podające/odcinające dopływ cieczy.
Szkolenia
Centrum Szkoleniowe wyposażone jest w nowoczesne stanowiska, na których prowadzone są szkolenia: − 100-0 Czujniki przemysłowe − 100-1 Pomiar i detekcja przemieszczeń liniowych i kątowych − 200-0 Podstawy iskrobezpieczeństwa − 300-0 Sieci komunikacyjne – podstawy − 301-0 Sieci komunikacyjne – Profibus i Ethernet − 302-0 CODESYS 2/3 + QVIS − 303-0 IO-Link – podstawy technologii − 304-0 Stacje I/O w strefach Ex − 400-0 RFID – kurs podstawowy − 401-0 RFID – kurs zaawansowany − 500-0 IVu – przemysłowa analiza obrazu − 501-0 Bezpieczeństwo osób i maszyn − 503-0 Wireless – podstawy i kurs zaawansowany Udział w zaproponowanych kursach jest doskonałym praktycznym uzupełnieniem akademickiej wiedzy w warunkach zbliżonych do przemysłowych. Polecany jest studentom, nauczycielom akademickim, a przede wszystkim inżynierom automatykom, których celem jest wdrażanie najnowszych nowoczesnych rozwiązań w ich macierzystych zakładach przemysłowych. Szczegółowe informacje dotyczące dokładnej tematyki poszczególnych kursów znajdują się na stronie internetowej www.turck.pl w zakładce Szkolenia. Serdecznie zapraszamy do udziału w szkoleniach.
Aplikacje
W Centrum Szkoleniowym usytuowano kilka urządzeń demonstracyjnych przedstawiających zrealizowane aplikacje. Pierwszą z nich jest Pick-to-Light. Jest to zestaw demonstrujący działanie systemu weryfikacji kontroli pobrań. Pracownik ma za zadanie pobrać części z pojemników, przy których świeci się zielona lampka. Po pobraniu elementów lampka gaśnie i zapala się kolejna wskazująca następne miejsce, z którego pracownik powinien pobrać element. W przypadku, gdy pracownik będzie chciał pobrać element z niewłaściwego pojemnika i zbliży do niego rękę, lampka przy tym pojemniku zaświeci się na czerwono oraz zostanie włączony sygnał dźwiękowy na kolumnie świetlnej. Podświetlane czujniki i przyciski oraz kolumna świetlna z sygnalizatorem dźwiękowym są podłączone do kart DI/DO systemu modułowego BL67, którym steruje programowalny gateway z funkcją sterownika PLC. Kolejną aplikacją jest system weryfikacji poprawności podłączenia węża hydraulicznego do odpowiedniego gniazda. Przy gnieździe zamontowana jest niewielka głowica RFID, która odczytuje numer ID z nośnika przymocowanego na stałe do węża. Podłączenie właściwego węża sygnalizowane jest zaświeceniem zielo-
108
P
O
M
I
A
R
Y
•
A
U
T
O
M
A
T
Y
K
Bartłomiej Besz Product Manager Factory Automation, Turck Sp. z o.o. A
•
R
O
B
O
T
Y
K
A
N R 3/ 20 1 5
NOWE CENTRUM SZKOLENIOWE TURCK
www.turck.com
Szeroka oferta szkoleń skupiających się m.in.
na zagadnieniach sensoryki, systemów bezpieczeństwa maszyn, przemysłowych sieci komunikacyjnych i zdalnych I/O
Możliwość dostosowania programu zajęć do indywidualnych wymagań
Powierzchnia ponad 100 m
2
przeznaczona do
celów szkoleniowych
Dwie miniaturowe linie przemysłowe oraz szereg stanowisk umożliwiających przetestowanie oferowanych produktów w warunkach maksymalnie zbliżonych do przemysłowych
Sense it! Connect it! Bus it! Solve it!
TURCK sp. z o.o. ul. Wrocławska 115, 45-836 Opole tel. 77 443 48 00, fax 77 443 48 01 internet: www.turck.pl e-mail: poland@turck.com
P O M I A RY • A U T O M AT Y K A • R O B O T Y K A
49 55
Jacek Korytkowski
Układ elektroniczny cyfrowego syntezatora konduktancji do symulacji dużych rezystancji Ryszard Kopka, Wiesław Tarczyński
Influence of the Operation Conditions on the Supercapacitors Reliability Parameters Ewelina Chołodowicz, Przemysław Orłowski
Sterowanie przepływem towarów w magazynie z wykorzystaniem predyktora Smitha
61
Maciej Węgierek, Bartosz Świstak, Tomasz Winiarski
67
Jacek Dunaj
Modularne środowisko do rywalizacji robotów śledzących linię
Rozwiązania programowe w sterowaniu zaawansowanymi aplikacjami wizyjnymi
PAR POMIARY • AUTOMATYKA • ROBOTYKA 3/2015 (217)
41
PAR kwartalnik naukowo-techniczny
3/2015 ISSN 1427-9126 Indeks 339512
Cena 25,00 zł w tym 5% VAT
www.par.pl
W numerze:
3 5 15 25
Od Redakcji Alicja Cegielska, Mariusz Olszewski
Nieinwazyjny interfejs mózg–komputer do zastosowań technicznych Magdalena Górska, Mariusz Olszewski
Interfejs mózg–komputer w zadaniu sterowania robotem mobilnym Piotr Bakun, Oskar Długoński, Robert Piotrowski
Zaawansowane metody sterowania kaskadowym układem zbiorników
31
Igor P. Kurytnik, Marcin Tomasik, Stanisław Lis
37
Aleksandra Kłos-Witkowska
Pomiar objętościowego natężenia przepływu mleka
Biosensory
Ponadto: Informacje dla Autorów – 83 | European Space Agency – historia, misja, udział Polski – 87 | Wspomnienie – Profesor Mieczysław Adam Brdyś – 91 | AutoCAD 2016/ LT2016/360+ – 94 | Autodesk Inventor Professional 2016PL/2016+ /Fusion 360 – 95 | Introduction to Quantum Metrology. Quantum Standards and Instrumentation – 96 | Kalendarium – 97 | XIX Międzynarodowa Szkoła Komputerowego Wspomagania Projektowania, Wytwarzania i Eksploatacji – 98 | XIX Konferencja Automatyków – Rytro 2015 – 99 | VIII Ogólnopolski Konkurs MŁODZI INNOWACYJNI – 100 | Centrum Szkoleniowe Turck – wsparciem dla uczelni i studentów – 101