Komputery à la Raspberry dla przemysłu?

10.12.2019 Informacje produktowe / Komputery przemysłowe
Komputery jak malina
Wizerunek autora
Piotr Gocłowski Były pracownik Elmark Automatyka S.A.
Producent: MOXA
  • Zakłady przemysłowe

W wielu zastosowaniach przemysłowych zwykle stosuje się komputery architektury x86 / 64b z systemem z rodziny Windows. Jest to odzwierciedlenie monopolu tej architektury i systemów na komputerach osobistych. Efekt skali ma w tym przypadku ma swoje wady i zalety, ale czy istnieje inna droga w wyborze komputera i systemu operacyjnego pracującego w zastosowaniach niekonsumenckich?

Co to jest komputer przemysłowy?

To maszyna obliczeniowa zaprojektowana do pracy w określonych warunkach, trudniejszych niż te w których pracują standardowe komputery osobiste. Komputery przemysłowe są stosowane w wielu branżach: sterowanie procesem, przetwarzanie danych, aplikacje transportowe, systemy komunikacyjne, CCTV, POS/POI, sprzęt medyczny, wojsko, rozrywka. Komputer jest urządzeniem uniwersalnym dlatego istnieją też inne niszowe zastosowania. Komputery przemysłowe występują w wielu formatach:

  • Box / miniBox – Mniejsza lub większa zwarta obudowa, najczęściej z metalu
  • Do szafy RACK 19’’
  • Panelowe – połączenie monitora i komputera w jednej obudowie.
  • Wolnostojące – podobne do standardowych konsumenckich desktopów
  • SBC – bez obudowy, jednopłytkowe, np. Raspberry PI

Poniżej tabelka z najczęstszymi wymaganiami stawianymi wobec takich komputerów:

Wymagania Sposób realizacji
Szeroki zakres temperatury pracy Procesory z mniejszą wydajnością (mniejsze TDP), duże radiatory
Pyłoszczelność Uszczelniona obudowa, podwyższone IP
Odporność na wibracje Stosowanie dysków SSD, eliminacja mechanicznych części, dodatkowe elementy tłumiące wibracje
Odporność na wilgoć Lakierowanie płyt PCB (conformal coating), zwiększona szczelność obudowy
Długowieczność Brak ruchomych elementów, np. chłodzenie pasywne, dysk SSD, odporny system plików
Szerokie możliwości komunikacyjne Dodatkowe interfejsy, Ethernet, USB, RS-232/422/485, cyfrowe i analogowe wejścia/wyjścia, CAN, Profibus
Niski pobór energii Stosowanie procesorów niskoprądowych, np. Atom, celeron
Długoterminowa dostępność Stosowanie typowych popularnych komponentów do produkcji i procesorów z długim okresem wsparcia, np. Celeron J1900
Niezawodność oprogramowania Stosowanie specjalnych wersji systemów operacyjnych, np. Windows Embedded/IoT

Powyższa tabelka obrazuje ogólne wymagania, każda branża ma nieco inne. Np. jeśli w danym zastosowaniu wymagana jest wysoka wydajność, to wtedy trzeba zrezygnować z niskiego zużycia energii i pracy w wysokich temperaturach.

Najczęściej w używaną architekturą procesorów w takich zastosowaniach jest x86 lub 64b, coraz śmielej radzi sobie też architektura znana z urządzeń mobilnych a konkretnie ARM. To, co ją charakteryzuje to mniejsze zużycie energii, mniejszy rozmiar, lepszy współczynnik wydajności do pobieranej mocy i niższa cena. Prawdziwy boom na urządzenia z procesorami ARM na rynku konsumenckim rozpoczął się nie tak dawno, wraz z pojawieniem się pierwszych smartfonów. Jednak to popularna malina, spopularyzowała model „komputer z procesorem ARM + Linuks” w środowisku DIY i makerów.

Raspberry Pi

 

Komputer Raspberry Pi

 

Komputer ten został wydany w 2012 roku, a powstał po to, aby wspierać naukę Informatyki w krajach rozwijających się, i nikt nie przypuszczał jak bardzo popularny się stanie. To nie jest tak, że przed Raspberry PI nie było komputerów jednopłytkowych małych rozmiarów, opartych na procesorach ARM, były, ale było kilka czynników, którymi RPI zmieniało grę. Niska cena, niezła wydajność (w stosunku do ceny i poboru prądu), łatwość uruchomienia, przygotowany system operacyjny Linuks, wyjście wideo – to były cechy które sprawiły, że komputer ten stał się najpopularniejszym komputerem ogólnego przeznaczenia w historii ze sprzedażą 25 milionów sztuk (12.2018). Raspberry Pi stał się dodatkową dźwignią zwiększającą popularność systemów Linuksowych.

Krótka historia Linuksa

 

Maskotka Linuksa

 

Systemy Linuksowe już od dłuższego czasu wykorzystywane są w wielu urządzeniach, którym do standardowego peceta jest raczej daleko. Są one używane w wielu urządzeniach konsumenckich takich jak, routery, telewizory, smartfony, a system Android (Oparty na Linuksie) w tych ostatnich, od kwietnia 2017 jest najpopularniejszym systemem operacyjnym używanym na świecie. Linus Torvalds, twórca Linuksa, rozpoczynając jego tworzenie w 1991 roku nawet nie podejrzewał, że system ten osiągnie tak wielką popularność. Wykorzystanie systemów opartych na jądrze Linuksa nie kończy się oczywiście na urządzeniach mobilnych, jego różne odmiany są używane przez znaczącą większość serwerów sieci WAN, czyli Internetu. Czyli można pokusić się o stwierdzenie, że Internet w dużej mierze bazuje na Linuksie.

Linuks w zastosowaniach embedded

Linux embedded

W przemyśle również coraz śmielej radzą sobie systemy Linuksowe. Są stosowane w routerach przewodowych/komórkowych, bramach IoT, sterownikach PLC, kontrolerach RTU, komputerach przemysłowych, dataloggerach a nawet w robotach przemysłowych. Deweloperzy i projektanci wybierają systemy Linuksowe ze względu na charakter Open source czyli min. darmowość, dużą społeczność (większość pytań już została zadana), ogromną ilość gotowych do pobrania narzędzi i aplikacji a także dużą elastyczność i możliwość dostosowania dystrybucji pod własne potrzeby. Jeśli wymagana jest praca w czasie rzeczywistym to można wykorzystać RTLinux, a konkretnie specjalną wersję jądra, wspierającą prace w trybie „Real-Time”. Czym jest praca w czasie rzeczywistym? Jest to taka praca systemu operacyjnego która umożliwia wykonywanie obliczeń w zdeterminowanym czasie, niezależnym od innych procesów.

ARM w przemyśle

A więc czy istnieje miejsce dla komputerów w modelu „ARM + Linuks” w zastosowaniach przemysłowych? Moim zdaniem jak najbardziej tak, i ma to sporo zalet:

  • Niższe zużycie energii i statystycznie lepsza niezawodność architektury ARM
  • Dużo gotowych bibliotek w repozytoriach, zmniejszających ilość kodu do napisania
  • Darmowe oprogramowanie Open source
  • Łatwość wyszukiwania rozwiązań problemów dzięki szerokiej społeczności systemów Linuksowych
  • Większa elastyczność w pisaniu oprogramowania i lepsza kontrola nad systemem
  • Możliwość pracy w czasie rzeczywistym (Real-time)

Co do wad:

  • Początkowo nieco bardziej stroma krzywa uczenia systemu
  • Początkowo obsługa za pomocą linii komend (możliwa późniejsza instalacja środowiska graficznego o ile jest wyjście wideo)

Komputery ARMowe Moxy

Firma Moxa posiada w swojej ofercie komputery z preinstalowanymi systemami Linuksowymi, dlatego specjalnie dla nich przygotowała dedykowaną dystrybucję o nazwie Moxa Industrial Linux. Jest to dystrybucja, która jest dostosowana specjalnie dla aplikacji przemysłowych, a jej najważniejsze cechy to:

  • Cyberbezpieczeństwo zgodne z IEC 62443-4-2
  • System plików odporny na losowe wyłączenia prądu, nawet podczas zmiany firmware
  • Automatyczny system recovery w przypadku uszkodzenia systemu plików
  • Wbudowana funkcja resetu do ustawień fabrycznych
  • Długoterminowe wsparcie producenta – 10 lat

W ofercie Moxa znaleźć można szereg komputerów z procesorami ARM i systemem Linuksowym zaprojektowanych do pracy w warunkach przemysłowych, różnią się one liczbą portów Ethernet, portów szeregowych, niektóre posiadają wejścia/wyjścia cyfrowe, modemy komórkowe itd., dlatego łatwiej dobrać odpowiedni model do projektu. W razie gdyby aplikacja była już stworzona np. na Raspberry Pi, można dosyć łatwo ją zmigrować na komputery Moxa, producent w jednej z not technicznych opisuje ten proces.

Zajrzyj też do zestawienia komputerów dla IIoT:

Komputery IIoT Moxa

Źródła:

https://en.wikipedia.org/wiki/History_of_Linux

https://medium.com/@patdhlk/realtime-linux-e97628b51d5d

https://stackoverflow.com/questions/51669724/install-rt-linux-patch-for-ubuntu

https://www.elmark.com.pl/producenci/sklep/kompaktowe-komputery-montaz-na-szynie-din-lub-na-scianie

Skontaktuj się ze specjalistą Elmark

Masz pytania? Potrzebujesz porady? Zadzwoń lub napisz do nas!