Wbudowane uczenie maszynowe w zastosowaniach przemysłowych
Na przestrzeni ostatnich kilku lat powstały niezliczone prognozy na temat tego, jak sztuczna inteligencja (SI) i uczenie maszynowe (UM) zmienią nasze życie. Wszystko ma swoją cenę: zgodnie z prognozami rynek globalny ma wzrosnąć do oszałamiającej kwoty rzędu 554 mld USD do roku 2024.
Branże wytwórcza i przemysłowa nie stanowią tu wyjątku, a SI oraz UM zaczynają odgrywać kluczową rolę w transformacji cyfrowej przemysłu. Stosowanie komputerów w fabrykach nie jest niczym nowym, a niemal wszędzie stosuje się programowalne sterowniki logiczne (PLC) oraz ugruntowane protokoły takie jak SCADA. Niemniej jednak rozwój przemysłowego Internetu rzeczy (IIoT) oznacza, że dzisiejsze linie produkcyjne wyposażono w czujniki generujące coraz większe ilości danych. SI oraz UM dają możliwość zrobienia użytku z wszystkich tych informacji, podnosząc wydajność i wprowadzając ulepszenia – tym samym pomagając w przejściu do Przemysłu 4.0.
To tyle, jeśli chodzi o szum medialny i żargon. Pozostaje pytanie,w jaki sposób inżynierowie mogą w praktyce wykorzystać SI/UM do uzyskania rzeczywistych i mierzalnych korzyści? Czy ta technologia jest już wystarczająco dopracowana, aby wprowadzić ją na fabryczne hale, czy też są to dopiero jej początki?
Różnica pomiędzy uczeniem maszynowym a sztuczną inteligencją
Zacznijmy od wyjaśnienia jednej istotnej kwestii: UM to nie to samo co SI. Choć podawane są różne definicje, panuje zgoda, że SI odnosi się ogólnie do różnych koncepcji uzyskania myślących komputerów. Z kolei UM można zdefiniować w węższym zakresie jako umożliwienie komputerom samoczynnego uczenia się i doskonalenia w wyniku pracy z danymi, w odróżnieniu od sytuacji, gdzie to człowiek tworzy wszystkie aspekty programu lub rozwiązania. W UM buduje się algorytmy, na podstawie których system komputerowy może się uczyć poprzez tworzenie prognoz i sprawdzanie ich trafności.
W przemyśle UM znajduje zastosowanie w rozmaitych obszarach, od konserwacji prewencyjnej przez optymalizację wydajności procesu aż po proste, lecz istotne zadania takie jak ustalanie terminu zamawiania części zamiennych i materiałów eksploatacyjnych. Przykładowo, obrabiarkę można wyposażyć w wiele czujników temperatury i wibracji. System UM może nauczyć się, kiedy dane generowane przez te czujniki wskazują na zużycie lub rozregulowanie określonej części. Oznacza to możliwość awarii w najbliższym czasie. Takie zastosowanie jest możliwe pod warunkiem albo wyposażenia istniejącej maszyny w odpowiednie czujniki, albo skorzystania z nowej obrabiarki, wyposażonej w takie czujniki fabrycznie.
Gdzie dziś stosuje się UM?
Przyjrzyjmy się nieco dokładniej niektórym spośród tych zastosowań i sprawdźmy, gdzie stosuje się UM w automatyce przemysłowej.
Do typowych zastosowań na dzień dzisiejszy należą:
- Systemy wizyjne – wykorzystywane np. do inspekcji i kontroli jakości, gdzie system UM można nauczyć rozpoznawania problemów. Może to być coś tak prostego jak brakujący obiekt na przenośniku taśmowym.
- Podejmowanie decyzji – wykorzystywanie danych do automatycznego, szybkiego wybierania najlepszego działania w czasie rzeczywistym, pozwalające na zwiększenie wydajności i ograniczenie zakresu błędów ludzkich.
- Konserwacja predykcyjna – wykrywanie nadchodzących problemów na podstawie danych z czujników może zminimalizować przestoje i związane z nimi koszty.
- Pomoc w zwiększeniu bezpieczeństwa – rozpoznawanie zdarzeń mogących powodować zagrożenie oraz podejmowanie odpowiednich działań, od wyłączania maszyn aż po unikanie kolizji robotów, pojazdów lub ludzi.
W praktyce nie każdy system nadaje się do wprowadzenia UM. Mogą istnieć ograniczenia co do rodzaju gromadzonych danych oraz sposobu ich przetwarzania. Również koszty wyposażenia w czujniki, moc obliczeniową, zasilanie i sieć mogą okazać się zbyt wysokie. Innym problemem jest wydłużony czas reakcji, głównie tam, gdzie opóźnienia wynikają z wymiany danych ze zdalnymi zasobami obliczeniowymi lub chmurą.
Wyzwania integracji UM z automatyką
Beckhoff, dostawca rozwiązań w zakresie automatyki, identyfikuje pięć wymogów zasadniczych, które należy spełnić co do jednego, aby móc z powodzeniem wdrożyć UM w automatyce. Stanowią one użyteczny punkt wyjścia. Są to:
- Otwarte interfejsy gwarantujące interoperacyjność,
- Rozwiązania UM wystarczająco proste, aby móc je wykorzystywać i integrować z istniejącym oprogramowaniem bez konieczności posiadania specjalistycznej wiedzy,
- Rozwiązania UM wystarczająco niezawodne i dokładne, aby przynosiły wartościowe rezultaty,
- Solidne metody uczenia, mogące poradzić sobie z danymi zaszumionymi lub nieprecyzyjnymi,
- Przejrzystość, umożliwiająca dobre zrozumienie systemów UM.
Wdrażanie projektów w zakresie SI i UM w praktyce może też okazać się wyzwaniem, zwłaszcza w organizacjach niemających doświadczenia. Jak zauważył Gartner, „Projekty SI często kończą się porażką z powodu problemów z utrzymaniem, skalowalnością i zarządzaniem”, a od weryfikacji koncepcji do wdrożenia systemu produkcyjnego wiedzie długa i kręta droga. Projekty z łatwością mogą wymknąć się spod kontroli, jeśli skalowalna wydajność nie dorówna nierealistycznym oczekiwaniom, a brak przejrzystości pozwoli na ukrycie rzeczywistych problemów przed oczami decydentów firmy.
Konieczne jest także przemyślenie praktycznych aspektów wdrożenia systemu UM oraz potrzebnej mocy obliczeniowej. Nie zawsze jest to oczywiste. W każdym systemie UM inne potrzeby występują w procesie uczenia początkowego, a inne przy codziennym doskonaleniu modelu po wdrożeniu. Faza przedprodukcyjna może wymagać ogromnych zbiorów danych i intensywnych obliczeń wymagających użycia komputerów lub serwerów o potężnej mocy. Lecz po wdrożeniu systemu do pracy w zakładzie, dokonywane stopniowo udoskonalenia (uzyskane w drodze tak zwanego „wnioskowania”, ulepszającego model w oparciu o nowe dane) potrzebują dużo mniejszej wydajności. Z tego względu do ich obsługi szczególnie dobrze nadają się procesory wbudowane.
Algorytmy UM w urządzeniach brzegowych
Lokalna obsługa modeli przez system wbudowany albo komputer PC ma pewne zalety w porównaniu z koniecznością przesyłania danych do chmury. Często jest szybsza, z minimalnym opóźnieniem czasu reakcji oraz pozwala na obniżenie wymogów przepustowości danych. Zapewnia także bezpieczeństwo i prywatność danych.
Gartner przedstawia przydatną koncepcję „empowered edge” – zwiększenia roli przetwarzania brzegowego, opisującą sposób organizacji pracy zasobów obliczeniowych i czujników IoT. Najprościej mówiąc, „brzeg” oznacza, że źródło danych znajduje się w pobliżu miejsca ich przetwarzania. Z kolei „wbudowany” w tym kontekście oznacza, że przetwarzanie może się odbywać nawet na poziomie punktów końcowych. Czujniki i napędy potencjalnie można więc wyposażyć w możliwości UM.
Rys.1: Na komputerze prowadzone jest wstępne nauczanie, podczas gdy wbudowane procesory obsługują wnioskowanie w terenie. (Źródło: Microchip)
UM: dlaczego, co, gdzie i jak
UM niekoniecznie musi stanowić dobre rozwiązanie dla każdego, niemniej jednak w przypadku wielu zastosowań może ono przynieść wymierne korzyści. Dlaczego warto skorzystać z UM? Wielu firmom może ono zapewnić poprawę wydajności, skalowalności i produktywności przy jednoczesnym obniżeniu kosztów. Istnieją pewne obawy w zakresie etyki i odpowiedzialności. Jednakże w działalności przemysłowej niemającej bezpośredniego związku z klientami kwestie te zapewne znajdują się pod kontrolą. Prawdę mówiąc, opinia wyrażona przez IDC, iż „Firmy wdrożą SI – i to wcale nie dlatego, że mogą, tylko dlatego, że muszą” w konkurencyjnym środowisku przemysłowym raczej nie jest przesadzona.
Zastanawiając się nad tym, jak wdrożyć UM i jakich komponentów nam potrzeba, być może najlepiej w pierwszej kolejności rozważyć kwestię „gdzie” – czy powinniśmy postawić sobie za cel obsługę w pełni lokalną w ramach systemu wbudowanego, czy też zdalną obsługę w chmurze? Rozwiązanie lokalne często okazuje się najlepsze. Jednakże należy starannie rozważyć wszelkie kompromisy, w tym koszty, opóźnienia, zużycie energii, bezpieczeństwo oraz dostępną przestrzeń fizyczną na zasoby obliczeniowe.
Przykładowe rozwiązania
Jeśli chodzi o wbudowane systemy UM, wielu producentów oferuje dziś odpowiednie procesory do zastosowań przemysłowych. Spójrzmy na kilka przykładów:
Układ MAX78000 firmy Maxim to tzw. system w czipie (ang. System on Chip, SoC) przeznaczony do zastosowań SI i UM. Zawiera rdzeń Arm Cortex-M4 oraz akceleratory sprzętowe przeznaczone do obsługi wnioskowania. Dzięki temu możliwe jest uzyskanie wysokiej wydajności obliczeniowej przy niskim poborze energii. Maxim posiada także w swojej ofercie zestaw ewaluacyjny oraz platformę aplikacyjną. Ułatwiają one zespołowi technicznemu szybkie wdrożenie i pełne wykorzystanie możliwości MAX78000.
Kolejnym przykładem jest oferowany przez Microchip ekosystem UM, obejmujący zestawy ewaluacyjne EV18H79A SAMD21 i EV45Y33A SAMD21. Zawierają one czujniki firm TDK i Bosch i opierają się na 32-bitowym mikrokontrolerze SAMD21G18 firmy Microchip z rdzeniem Arm Cortex-M0+.
Kolejna opcja to oferowany przez NXP mikroprocesor typu crossover i.MX RT1060, oparty na platformie Arm Cortex-M7 MPCore. Jest w pełni wspierany przez oprogramowanie i narzędzia NXP, zapewnia wysoką wydajność CPU oraz posiada szeroki wachlarz interfejsów.
Rys. 2: Zestaw ewaluacyjny Maxim MAX7800 obejmuje SoC MAX78000, kolorowy ekran dotykowy, mikrofon oraz żyroskop/akcelerometr. (Źródło: Maxim Integrated)
Wnioski
Nie ma wątpliwości, że UM może stanowić technologię stwarzającą nowe możliwości w zastosowaniach przemysłowych. Może także ulepszać procesy produkcyjne i inne przez zwiększenie wydajności, skalowalności i produktywności – oraz ograniczać koszty.
Wdrożenie rozwiązania UM może być skomplikowane i wymaga rozważenia licznych za i przeciw. Jedną z kluczowych decyzji jest to, czy zasoby obliczeniowe powinny znajdować się na brzegu systemu lub być w nim wbudowane, czy też ulokować je zdalnie w chmurze lub na odrębnym serwerze.
W celu wdrożenia UM do zastosowań przemysłowych można skorzystać z coraz szerszej oferty wysokowydajnych procesorów wbudowanych. Są one wspierane ekosystemem oprogramowania oraz narzędziami programistycznymi, oferowanych przez firmy takie jak Maxim, Microchip czy NXP. Oznacza to, że wbudowanie odpowiedniego procesora w punktach końcowych systemu produkcyjnego, i tym samym w pobliżu źródeł danych, może stanowić praktyczne rozwiązanie pozwalające uzyskać maksymalne korzyści z wdrożenia UM.