sobota, 22 grudnia 2018

Podłączenie maszyn do systemu MES


Inspiracją do napisania tego krótkiego artykułu była rozmowa z klientem który wyraził zadziwienie że nasz system Golem OEE MES łączy się z maszynami za pomocą tak prymitywnych metod:
 „przecież mam nowe maszyny, wszystkie mają komputery, wszędzie są gniazda sieciowe LAN, to ja nie mogę zebrać danych z maszyn ?” 

Postaram się opisać to zagadnienie z lekkim przymrużeniem oka…

Wyobraźmy sobie ze maszyny to takie domki w których mieszkają krasnoludki a my chcemy do nich zadzwonić aby się dowiedzieć jaka jest temperatura w ich domkach.
Po pierwsze:
Każdy krasnal musi mieć telefon a my centralę telefoniczną. Jeden ma telefon GSM, inny ma telefon kablowy inny telefon voiceIP, jeden ma stary telefon na korbkę a kilku nie ma telefonów – musimy im je kupić.
Po naszej stronie musimy mieć centralę telefoniczną która potrafi się fizycznie połączyć się z każdym z tych telefonów i przekierować rozmowy na nasz telefon.

Po drugie:
Każdy krasnal mówi w innym języku. Jeden po polsku, jeden po chińsku, kilku po angielsku a jeden w jakimś starym języku. Musimy więc na naszej centrali mieć tłumaczy którzy będą pośredniczyć w rozmowie.

Po trzecie:
Musimy wiedzieć o co pytać. Nie możemy zapytać krasnala jaka jest temperatura. Musimy zapytać jaka jest wartość zmiennej numerycznej numer, no właśnie, jaki numer? 
Krasnoludek ma zeszyt w którym zapisuje pomiary – żeby nie było prosto – każdy w rubryce z innym numerem, jeden w stopniach Celsjusza a inny Fahrenheita. U jednego zapisana jako liczba całkowita którą trzeba podzielić przez 100 a u innego jako liczba rzeczywista.  

Po czwarte
Dzwonimy do jednego z krasnali a on mówi: poproszę hasło. Jakie hasło? No to dzwonimy do producenta domku czyli maszyny: jakie jest hasło? 
Jeden mówi nie pamiętam (czytaj: nie powiem), drugi nie wiem, to pewnie podwykonawca założył a trzeci mówi proszę bardzo, hasło to QWERTY – należy się 1400 euro.
Ale to hasło nie pasuje do innego domku !  A bo to trzeba zapłacić od każdego domku oddzielnie ….

A teraz na serio.
Telefon to fizyczne łącze komunikacyjne: Ethernet, rs232, rs485, rs422, CAN-BUS (CANopen), DeviceNet,  Profibus, Profinet, EtheerCAT itp. itd.
Centrala telefoniczna to serwery OPC. Tłumacze to drivery do obsługi konkretnych protokołów konkretnych producentów czy standardów. Nasz telefon to interfejs do oprogramowania, rest, sql etc.

Musimy znać budowę danych – program sterownika PLC czy tabelę rejestrów urządzenia  aby wiedzieć w jakiej zmiennej jest interesująca nas informacja.
Albo API aby potrafić zadać odpowiednie zapytanie dla webserwera jeśli sterownik takowy posiada albo maszyną steruje komputer.

No i kwestie licencyjne bo to temat najczęściej pomijany w całej tej dyskusji o przemyśle 4.0. 
Otóż producenci maszyn odkrywają powoli nowe źródełko dochodów: Płatny dostęp do informacji.
Coraz częściej można pobrać wszystkie dane w wygodnej dla programisty czy informatyka  formie, np. w formacie JSON prosto z komputera sterującego albo modułu webserwera podłączonych do LANu.  
Ale w zapytaniu trzeba podać login i hasło. Login to numer ID komputera a hasło ….. kosztuje Nx euro.
Od maszyny.

Na koniec proponuję odwiedzić stronę firmy Kepware specjalizującej się w sterownikach komunikacyjnych i serwerach OPC, a konkretnie stronę wyszukiwarki produktów:  https://www.kepware.com/en-us/products/kepserverex/product-search/

Ilość driverów i ceny pakietów naprawdę dają dużo do myślenia …..

Może sposób podłączenia maszyn w naszym systemie Golem OEE MES jest prymitywny.


Ale jest prosty, tani, skuteczny, można do systemu podłączyć każdą maszynę i może to zrobić „elektryk”.
Nie da się w ten sposób pozyskać wielu informacji, szczególnie informacji procesowych ale cóż …

zawsze jest coś za coś – kompletny system dla 20-30 maszyn może być tańszy niż serwer z zestawem kilku driverów i serwerem OPC  UA.