Praca w IT

Tworzymy systemy sterowania do akceleratorów. Jak wygląda praca automatyka Big Science?

big science s2innovation

Co może przekonać programistę do pracy Inżyniera Automatyka w projektach Big Science? – Chęć uczestniczenia w czymś wielkim, bo tak można mówić o projektach, w których uczestniczymy. Nie będzie wyolbrzymieniem, jeśli powiem, że dzięki naszej pracy, naszym aplikacjom zmieniamy świat na lepsze, więc taka praca to na pewno prestiż – powiedział nam Dawid Dwojewski, Inżynier systemów sterowania w s2innovation.

Dawid Dwojewski oraz Wojciech Bińczyk – Automation Engineer, opowiedzieli nam o realiach pracy automatyka. Z poniższej rozmowy dowiecie się, jak od środka wygląda praca w Big Science.

Na zdjęciu (od lewej): Wojciech Bińczyk, Dawid Dwojewski, s2innovation

Pracujecie w IT, ale w obszarze, o którym mało mówi się w mediach. Co warto wiedzieć o pracy automatyka? Na czym polega praca na tym stanowisku?

Wojciech Bińczyk (WB): Warto zacząć od tego, że stanowisko automatyka to bardzo obszerne pojęcie. Czym innym jest utrzymanie ruchu, czyli powiedzmy dbanie ciągłość produkcji, a czym innym budowa i uruchamianie nowych urządzeń. Punktem wspólnym są systemy sterowania, Utrzymanie Ruchu pracuje głównie nad ich “konserwacją”, ewentualnie naprawą błędów. Integrator więcej czasu poświęca na tworzeniu systemów od zera. W zależności od tego, z jakich komponentów składa się system sterowania, może mieć on więcej lub mniej wspólnego z IT. Przykładowo, gdy korzystamy z rozproszonego systemu kontroli EPICS (Experimental Physics and Industrial Control System) nasza praca polega na tworzeniu bazy rekordów, powiązanych ze sobą wzajemnymi zależnościami. Takie rozwiązanie spotkałem tylko w instytucjach związanych z Big Science.

Dawid Dwojewski (DD): Najprościej mówiąc, automatyk zajmuje się zaprogramowaniem danej aplikacji i uruchomieniem jej. Jeśli jednak zagłębimy się dokładnie w zawód inżyniera automatyka to dostrzeżemy złożoną specyfikę. Zawód inżyniera automatyka wiąże się z uruchamianiem maszyn, linii produkcyjnych w przemyśle. Automatyk uczestniczy od pierwszej fazy projektu aż do ostatniej.

Pierwsza faza polega na zebraniu założeń i rozpoczęciu prac projektowych. Ta część projektu polega na opracowaniu koncepcji, jak dana maszyna ma pracować, jak ją zbudować, w jaki sposób ma wyprodukować element, który na końcu chcemy otrzymać i jak uzyskać wymaganą przez klienta wydajność produkcji. Następnie, gdy maszyna jest budowana rozpoczyna się etap tworzenia oprogramowania, które będzie zarządzało pracą maszyny.

W skład takiej maszyny wchodzi wiele urządzeń, które trzeba skomunikować ze sterownikiem. Ten z kolei zarządza pracą maszyny. Są to czujniki, które zbierają informacje z maszyny, sterownik po odczytaniu informacji z maszyny realizuje zaprogramowaną logikę i steruje elementami wykonawczymi, takimi jak napędy, zawory. Dodatkowo w skład maszyny mogą wchodzić roboty, które również „rozmawiają” ze sterownikiem i wiele innych urządzeń, które wykonują swoją pracę, ale są kontrolowane przez sterownik PLC zaprogramowany przez inżyniera automatyka. Dodatkowo programowana maszyna często komunikuje się z systemami nadrzędnymi, bazami danych więc umiejętności programowania w językach wyższego poziomu, jak np.: Python również są tutaj wykorzystywane. Ostatnim etapem jest etap uruchomienia i testów. Zazwyczaj ten etap wiąże się z wyjazdem do klienta i uruchomieniem danej aplikacji na miejscu wraz z przetestowaniem jej działania.

S2Innovation wykorzystuje automatykę dla celów naukowych. Tworzymy aplikacje dla urządzeń, które pracują w ośrodkach badawczych na całym świecie, takich jak synchrotrony, teleskopy. Przykładem takiego ośrodka jest European Spallation Source w Lund w Szwecji. Pracujemy tam nad aplikacjami do sterowania systemami chłodzenia akceleratora. Takie projekty nazywamy projektami Big Science.

Skąd u Was zainteresowanie pracą na rzecz fizycznych produktów? Wszyscy marzą o projektowaniu popularnych stron, aplikacji…

WB: Przed S2Innovation pracowałem w przemyśle, to dosyć popularny wybór po studiach automatyki i robotyki. To pójście w stronę IT było dosyć nietypowe, jednak pozwoliło na dalszy rozwój. Co więcej, myślę że automatyka idzie w stronę informatyzacji, nowe rozwiązania opierające się o zdalny dostęp do urządzeń, a także rozbudowane systemy zarządzania produkcją, tworzą nową warstwę automatyki. Raczej nigdy o tym nie marzyłem, ale teraz wiem, że to jest bardzo ciekawa praca głównie ze względu na zróżnicowane zadania, jakie są przed nami stawiane. Jednego dnia przygotowujesz sterowanie zaworem, a innym razem tworzysz skrypt analizujący dane z czujników.

DD: Dla mnie praca inżyniera automatyka nie jest typową pracą programisty, którą wykonuje się 100% sprzed komputera. W moim zawodzie czasami trzeba popracować z fizycznymi urządzeniami, coś ustawić, coś skonfigurować, czasami sterownik nie otrzymuje sygnału, więc muszę sprawdzić czy podłączenie elektryczne jest poprawne. Zdarza się, że jakiś zawór nie otwiera się lub nie zamyka całkowicie. Muszę wtedy sprawdzić, czy jest on poprawnie zamontowany, czy problem, że coś poprawnie nie działa nie leży po stronie mechaniki.

Zawsze chciałem, aby moja praca była czymś ważnym, czymś użytecznym dla zwykłych ludzi i dlatego najpierw pracowałem w przemyśle przy tworzeniu maszyn, które produkowały rzeczy wykorzystywane przez ludzi w codziennym życiu. Dla przykładu tworzyłem linię do produkcji świeczek, pracowałem również w przemyśle farmaceutycznym przy aplikacjach do produkcji leków, w przemyśle samochodowym i spożywczym.

Dziś cieszy mnie, że mogę współtworzyć rozwiązania, które przyczyniają się do rozwoju nauki, ponieważ w ośrodkach, w których realizujemy projekty są prowadzone badania materii od biochemii i farmakologii przez materiałoznawstwo po fizykę, czyli coś z czego każdy człowiek na świecie będzie korzystał.

Praca przy takich projektach zapewnia ciągły rozwój, każdy dzień może zaskoczyć mnie czymś nowym, dlatego nie grozi mi wypalenie zawodowe.

Czym różni się praca automatyka od pracy programisty, inżyniera, który pracuje np. dla branży bankowej?

WB: Nie jestem pewien czy potrafię odpowiedzieć na to pytanie, nigdy nie pracowałem dla branży bankowej. To co zdecydowanie odróżnia jedno od drugiego to sterowanie rzeczywistymi urządzeniami, które wykonują jakiś ruch lub czynność. Wydaje się, że jest to bardziej namacalne niż sterowanie procesem bankowym.

Kolejną różnicą jak przychodzi mi do głowy jest możliwość poznania procesów produkcyjnych, dla mnie to zawsze było bardzo interesujące móc dowiedzieć się jak coś powstaje. Oczywiście pewne procesy są ciekawsze a inne mniej, np. bardzo dobrze wspominam pracę w fabryce ciasteczek. Wtedy też poznajemy rozwiązania, które są specyficzne w tej branży, zrozumienie technologii wymaga od nas znajomości zagadnień z mechaniki czy fizyki. Przykładowo pracując teraz dla Big Science uczę się jednocześnie o Kriogenice, to więcej niż ciekawe patrzeć jak zaprojektować system, żeby osiągnąć temperaturę w okolicach 2K tj. -271℃.

Podsumowując, projekty które realizujemy jako automatycy w S2Innovation są zróżnicowane, często trzeba wstać od komputera, bo ta praca na pisaniu kodu dopiero się zaczyna.

DD: Pierwszą różnicą jest praca na miejscu u klienta. Mimo tego, że technologia wciąż się rozwija, pojawiają się możliwości zdalnego uruchamiania to jednak nie jesteśmy w stanie wszystkiego przetestować zdalnie i czasami musimy pojechać do klienta i popracować na miejscu u niego w siedzibie. W ESS mamy tryb pracy hybrydowy i zazwyczaj tydzień w miesiącu pracujemy u klienta, resztę zdalnie. Daje to również możliwości bliższego poznania zespołu, z którym współpracujemy. W końcu spotkanie na żywo to nie to samo, co rozmowa zdalna przez kamerkę.

Kolejną różnicą jest wiedza techniczna z różnych dziedzin i praca z fizycznymi urządzeniami. Inżynier automatyk powinien posiadać wiedzę z elektryki, ponieważ fizyczne sygnały jakie otrzymuje sterownik są sygnałami elektrycznymi. Do tego dochodzi znajomość mechaniki. Zawory, które bardzo często są wykorzystywane w instalacjach, działają dzięki powietrzu lub ciekłym medium, co sprowadza nas do dziedziny pneumatyki i hydrauliki. Do tego oczywiście automatyka coraz bardziej rozwija się i wkracza do świata IT. Tworzenie skryptów w Pythonie, C++ to coraz częściej codzienność dla inżyniera automatyka.

Ostatnią kwestią, która według mnie odróżnia automatykę od typowego IT to bezpieczeństwo, ale bezpieczeństwo ludzi. Najczęściej programowane przez nas maszyny wykonują ruchy, które mogą być niebezpieczne dla ich operatorów. Musimy więc za pomocą odpowiednich środków bezpieczeństwa, odpowiednio zaprogramowanych zapewnić bezpieczeństwo ludziom pracującym z tymi urządzeniami. Niestety jeden nasz błąd może doprowadzić do ciężkiego uszczerbku na zdrowiu albo nawet utraty życia, więc nie możemy się mylić.

Porozmawiajmy o skali Waszej codziennej pracy. Ile osób korzysta z Waszych rozwiązań? Kto właściwie jest odbiorcą rozwiązań, które tworzycie?

WB: W tym momencie pracuję przy systemie sterowania chłodzeniem akceleratora protonów, tzw. kriogenice. Ten system obsługuje nie więcej niż kilkadziesiąt osób, co więcej jest w pewien sposób unikalny. Nie da się go przenieść jeden do jednego tego projektu do innego klienta, choć oczywiście można wykorzystać te same rozwiązania. Jest on jednak częścią placówki naukowej, która pozwoli na prowadzenie badań przez najbliższe kilkadziesiąt lat. Mam nadzieję, że dzięki mojej pracy, ktoś odkryje coś, co zmieni nasze życie.

DD: Może zabrzmi to banalnie, ale według mnie, każdy człowiek na świecie. Czy to w przemyśle, każdy korzysta z produktów, które się produkuje, za pomocą maszyn, czy to w projektach Big Science, każdy korzysta z rozwiązań, które udaje się rozwinąć w tych projektach. Ale pierwszymi użytkownikami są naukowcy, którzy mogą przeprowadzać badania w ośrodkach. Jeden z projektów, w których uczestniczę (European Spallation Source – ESS) jest multidyscyplinarnym ośrodkiem badawczym. W jego budowie uczestniczy 13 europejskich krajów, więc grupa odbiorców to środowisko międzynarodowe.

Żeby zrozumieć, kto i w jaki sposób będzie korzystał z tego przykładowego rozwiązania, trzeba zrozumieć trochę proces, w jakim będzie działał. Obiekt składa się z akceleratora liniowego, w którym protony są przyspieszane i zderzane z obracającą się, chłodzoną helem tarczą wolframową, generując intensywne impulsy neutronów. Wiązki neutronów kierowane są do stacji eksperymentalnych, gdzie prowadzone są badania nad szeregiem materiałów. Neutrony służą jako unikalna sonda do ujawniania struktury i funkcji materii od skali mikroskopowej do atomowej, z potencjałem rozwoju nowych materiałów i procesów. Więc ludzie, którzy będą obsługiwać ten proces są naszymi pierwszymi odbiorcami, a kolejnymi wszyscy Ci którzy będą korzystać z rozwiązań, które zostaną rozwinięte dzięki prowadzonym badaniom.

Czy w pracy automatyka trafia się na te same problemy, wyzwania, z którymi borykają się programiści?

WB: Ciężko odpowiedzieć na to pytanie, bo automatyk często jest programistą, tylko w innej technologii. Myślę jednak, że porównując do programisty powiedzmy Pythona czy C, to problemy są zbliżone. Zresztą coraz popularniejsze staje się używanie Gita itp. narzędzi do wersjonowania kodu, część języków programowania na pierwszy rzut oka wygląda podobnie. Są też problemy, których nie spotka programista Pythona – są to przede wszystkim problemy ze sterowanym hardwarem, jak mechaniczne zacięcia lub zużycie elementów. Co więcej, dochodzą również tematy związane z bezpieczeństwem maszyn, w najprostszych słowach chodzi o to, żeby operator nie zrobił sobie krzywdy pracując przy maszynie.

DD: Trochę tak, ponieważ w programie, który piszę się na sterownik również pojawiają się błędy i trzeba debugować kod, ale mamy również inne problemy. Często współpracujemy z działami elektrycznymi, mechanicznymi i ich problemy również są naszymi problemami. Jeżeli na maszynie jest problem z mechaniką to nie możemy ruszyć ze swoją pracą, z uruchamianiem aplikacji, z testowaniem aż ten problem nie zostanie rozwiązany, dlatego często pomagamy przy ich rozwiązywaniu. Tak samo, jeżeli jakieś urządzenie zostanie błędnie podłączone elektrycznie, nie dostajemy sygnału na sterownik, nie jesteśmy w stanie wysterować urządzenia to również jest nasz problem, który pomagamy lub sami staramy się rozwiązać.

Zawsze interesuje nas możliwość rozwoju w danej branży. Czy jest takie coś jak typowa ścieżka kariery Automation Engineera? Od czego zazwyczaj zaczyna się i do jakiego stanowiska, pozycji dąży?

WB: Ścieżka kariery Automation Engineera może różnić się w zależności od firmy, branży i indywidualnych umiejętności, jednak istnieją pewne wspólne elementy, które często można zaobserwować. Po studiach rozpoczyna się pracę związaną z automatyzacją procesów produkcyjnych. To często czas poznania i rozwijania umiejętności w obszarze narzędzi i technologii, takich jak PLC (Programmable Logic Controller), SCADA (Supervisory Control and Data Acquisition), HMI (Human-Machine Interface). Następnym etapem jest specjalizacja w konkretnej technologii lub zagadnieniu przykładowo – bezpieczeństwu maszyn. To też moment, kiedy zaczyna się zarządzać projektami, oczywiście w zależności od firmy i obecnych zleceń, zakres może być różny. Następnie są już stanowiska kierownicze, zarządzanie zespołem programistów, czy też kierowanie dużymi projektami wymagających pracy całych zespołów.

DD: Swoją przygodę z automatyką rozpoczynałem od elektryki. Zaraz po szkole montowałem szafy sterownicze, następnie je projektowałem, kolejnym krokiem było programowanie sterowników PLC w automatyce, a obecnie rozszerzam umiejętności o łączenie systemów automatyki z systemami IT, wykorzystując w pracy języki wyższego poziomu. Według mnie, żeby dobrze programować urządzenia automatyki, należy je rozumieć, ich zasady działania, a do tego niezbędne jest poznanie podstawowych zasad elektryki, mechaniki, pneumatyki, ale również branży IT. Myślę, że w takiej pracy bardzo ważne jest doświadczenie, więc zachęcam do zdobywania go przez pracę już na etapie studiów lub praktyk, które prowadzimy w S2Innovation. W moim przypadku była i jest ciągła chęć rozwoju i poznawania nowych technologii. Stąd też praca przy aplikacjach wykorzystywanych w Big Science.

Co Waszym zdaniem przekonuje do rozpoczęcia pracy jako Automation Engineer czy do przebranżowienia się do Big Science?

WB: Myślę, że to nie jest łatwa praca, ale to właśnie wyzwania, jakie stawia, sprawiają, że daje satysfakcje. Pozwala też na ciągły rozwój w wielu technologiach i poznanie ciekawych rozwiązań nie tylko z branży automatyki. Możliwość podróży w ciekawe miejsca może być też kusząca. Bardzo cieszę się, że trafiłem do świetnego międzynarodowego projektu i mogę rozwijać się zarówno w automatyce, jak i IT.

DD: Myślę, że argumentem jest chęć poznania czegoś nowego, oderwania się od standardowych rozwiązań jakie tworzy się w branży IT. Chęć uczestniczenia w czymś wielkim, bo tak można mówić o projektach, w których uczestniczymy. Nie będzie wyolbrzymieniem, jeśli powiem, że dzięki naszej pracy, naszym aplikacjom zmieniamy świat na lepsze, więc taka praca to na pewno prestiż. Myślę, że pracując w zawodzie inżyniera automatyka, nie grozi nam wypalenie zawodowe, a w połączeniu z projektami, jakie realizujemy w S2Innovation, możemy mieć prawdziwą radość z codziennie wykonywanej pracy.


Wojciech Bińczyk. Automation Engineer z 10-letnim doświadczeniem w Automatyzacji Przemysłowej, który projektował i budował maszyny w przemyśle m.in. metalurgicznym, przetwórczym i spożywczym. Od prawie dwóch lat pracuje w S2Innovation nad projektem w European Spallation Source. W wolnym czasie uwielbia wędrować, słuchając audiobooków, jest także fanem Formuły 1.

Dawid Dwojewski. Inżynier systemów sterowania z wieloletnim doświadczeniem najpierw w przemyśle, a obecnie w projektach Big Science. Specjalizuje się w sterownikach PLC, w codziennej pracy wykorzystuje, doświadczenie zdobyte podczas projektowania elektrycznych układów sterowania oraz budowy maszyn. Pracuje z technologiami EPICS, Python, C++. Prywatnie uwielbiam koty i chodzenie po górach, siatkówkę i F1 🙂

Zdjęcie główne artykułu pochodzi z envato.com.

Redaktor naczelny w Just Geek IT

Od pięciu lat rozwija jeden z największych polskich portali contentowych dot. branży IT. Jest autorem formatu devdebat, w którym zderza opinie kilku ekspertów na temat wybranego zagadnienia. Od 10 lat pracuje zdalnie.

Podobne artykuły