Akceleracja rozwoju nowych technologii to duże wyzwanie dla integratorów systemów automatyki i robotyki. Wciąż poszerzający się rynek komponentów, czujników, systemów IO-link czy coraz większy udział RFID sprawia, że aplikacje są coraz bardziej rozbudowane. Jedno jednak się nie zmienia – to sterownik PLC. Szeroki wybór sterowników programowalnych oraz ich elastyczność sprawiają, że znajdują zastosowanie w zarządzaniu każdym urządzeniem, które jest wyposażone w moduł wejść i wyjść.
Programowalny sterowniki logiczny działa na zasadzie pętli. Inicjalizacja sterownika pozwala na odczyt sygnałów wejść, następnie wykonywany jest program po czym następuje zapisanie sygnałów wyjść i obsługa komunikacji. Cały system diagnozuje się i powraca do odczytu wejść. Zarówno wejścia jak i wyjścia mogą być analogowe dla parametrów o różnych wartościach, lub cyfrowe – dla parametrów, które przyjmują tylko wartości 0 lub 1. Doskonała optymalizacja i prostota rozwiązania sprawia, że sterowniki to centrum zarządzania od małych systemów po rozbudowane linie przemysłowe.
PLC to narzędzie uniwersalne, jednak o jego skuteczności świadczy główniekod napisany przez programistę. Sterownik zarządza zazwyczaj dużą liczbą urządzeń, które komunikują się w różnych językach, zatem język używany w PLC jest nadrzędnym. Najczęściej używany język programowania to logika drabinkowa. Język LD jako specyficzne połączenie symboli przypomina schemat elektryczny i jest znacznie prostszy. Języki strukturalne wymagają większych umiejętności programistycznych, ale dają też więcej możliwości. Doświadczeni programiści dopasowują języki do różnych funkcji, co znacznie poprawia stabilność kodu.
Jakość kodu ma olbrzymie znaczenie dla efektywności sterownika – źle ustrukturalizowane lub nazwane dane mogą tak zanieczyścić kod, że wprowadzanie zmian czy jego naprawa może się okazać niemożliwa. A wtedy pozostaje tylko pisanie programu lub dużych jego części na nowo.We wdrożeniach rzadko jest na to czas, więc warto odpowiednio zaprojektować cały schemat i przedyskutować go np. z robotykiem, elektrykiem i innymi osobami, które są odpowiedzialne za poszczególne części systemu. Dodanie bloków funkcyjnych znacznie poprawi kontrolę nad kodem, co jest szczególnie ważne w fazie testowania pracy sterownika. Częstym błędem programistycznym jest pisanie różnych instrukcji dla tej samej funkcjonalności. W przypadku błędu łatwiej poprawić kod, a funkcje często używane powinny być raczej kopiowane. Filozoficzna brzytwa Ockhama, która ucina to co niepotrzebne i zbędne jest w zasadzie dobrą praktyką każdego programisty.
Ponieważ nie ma jednego sposobu na pisanie programów do PLC-ków i mamy do dyspozycji wiele różnych języków, jedną z najważniejszych cech danego programu jest stosowanie jak najprostszych i możliwie najkrótszych programów. Najlepsi programiści spędzają aż 30% czasu na zaprojektowanie architektury i logiki działania, zostawiając sobie 70% czasu na żmudne pisanie kodu. Być może programista siedzący przy biurku i patrzący się w pustą kartkę może dziwić, bo przecież nic nie robi. A jednak właśnie tak powstają najbardziej stabilne programy. Dopasowanie algorytmu do zadania lub całego systemu to w zasadzie nawet nie pisanie kodu, a swoiste rzemiosło, udoskonalane przez lata.
Piotr Olewicz, Dyrektor Działu Automotive w AIUT, spółce będącej liderem na europejskim rynku automatyki przemysłowej i globalnym dostawcą zrobotyzowanych linii i stanowisk produkcyjnych. |
Dobre praktyki w programowaniu są bardzo istotne ponieważ w zastosowaniach przemysłowych jest bardziej niż pewne, że sterownik będzie obsługiwany przez więcej niż jednego pracownika. Rzetelnie wykonana i aktualizowana dokumentacja oraz odpowiednio zabezpieczone hasła pozwalają na kontrolowane dokonanie zmian przez kolejnych programistów. Fora internetowe pełne są próśb o pomoc w złamaniu hasła do PLC ponieważ inżynier, który wdrażał system, odszedł z firmy, a haseł brak. Nie trzeba chyba mówić jak ryzykowne jest takie działanie pod względem bezpieczeństwa danych.
Nie bez znaczenia są także kopie zapasowe tworzone regularnie po każdej zmianie. Może się bowiem okazać, że będziemy potrzebowali wrócić do wcześniejszych kopii. Backupy są też istotne gdy musimy wgrać program na inne sterowniki.
Z uwagi na różne funkcjonalności programiści mają swoje preferencje w kwestii wyboru marki PLC-ka. Dobra znajomość danego sprzętu wymaga kilku lat praktyki i szkoleń. W przypadku niewielkich wdrożeń lub pracy hobbystycznej wystarczy niewielki sterownik, jednak zazwyczaj firmy mają ustaloną listę preferowanych urządzeń. PLC-ki różnią się także możliwościami toteż te droższe to prawdziwe kombajny przemysłowe.
Wyzwania Przemysłu 4.0 silnie skręcają w kierunku multidyscyplinarności. Podstawowa wiedza o elektryce, pneumatyce czy robotyce to dodatkowe atuty, które mają duże znaczenie przy wdrożeniach nowych aplikacji. Szkolenia dla programistów PLC powinny zatem znaleźć się na szczycie priorytetów. Pytanie „dlaczego?’ jest zupełnie retoryczne. Dobry automatyk to przede wszystkim oszczędność czasu, nerwów i pieniędzy jeśli w grę wchodzą kary za nieterminowość wdrożeń.
W niezwykle industrialnym świecie liczą się tylko technologie, które się rozwijają.
Doskonalenie narzędzi rozwoju to nie tylko nowe funkcjonalności, to także ciągłość idei, która mimo wprowadzania innowacji, nie traci na wartości. Sterowniki umożliwiają ten rozwój i są na tyle uniwersalne, że ciężko sobie wyobrazić następcę zwykłego PLC-ka zamkniętego w szarej, przemysłowej obudowie.