Podkreślę na wstępie, że informacje w tym poście zawarte stanowią bardzo duże uproszczenie tematu, jednak są wystarczające, aby nauczyć się programować sterowniki PLC.
W sterownikach (podobnie jak w wszystkich urządzeniach cyfrowych począwszy od smartwatchy, smartfonów, a skończywszy na komputerach) instalowane są przynajmniej dwa fizyczne obszary pamięci., abyś lepiej zrozumiał co się dzieje w CPU nawiążemy do pamięci znanych z komputerów PC.
1. Pamięć RAM (Random Access Memory) zwana tutaj pamięcią roboczą: Jest to pamięć o dostępie swobodnym, co oznacza, że procesor może odczytywać i zapisywać dane w dowolnym miejscu w pamięci w dowolnym momencie. Pamięć RAM jest pamięcią „lotną”, co oznacza, że dane w niej przechowywane są utracone, gdy urządzenie jest wyłączone lub zresetowane. Pamięć RAM jest używana do przechowywania tymczasowych danych, takich jak program (wszystkie networki) co pozwala na szybkie i efektywne działanie sterowników.
2. Pamięć stała (coś na wzór ROM) zwana w PLC pamięcią ładowania: W przeciwieństwie do pamięci RAM, pamięć ROM jest „nieulotna”, co oznacza, że zachowuje swoje dane nawet po wyłączeniu urządzenia (w wielu sterownikach jej funkcję pełni karta pamięci, choć tak nie jest w 1200). Pamięć ładowania jest używana do przechowywania wszystkiego co ładujemy na sterownik, czyli konfiguracji sprzętowej, a także programy (i o czym później, również bloków danych). Jak sama nazwa wskazuje (Read-Only Memory), pamięć ROM jest zazwyczaj tylko do odczytu – sterownik ich zwykle nie modyfikuje.
Podsumowując, kluczową różnicą między pamięcią roboczą, a ładowania jest to, że robocza jest pamięcią lotną używaną do przechowywania danych tymczasowych, które są potrzebne dla aktualnie działających procesów, podczas gdy ładowania jest pamięcią nieulotną używaną do przechowywania konfiguracji i programu, który jest niezbędne do uruchomienia sterownika.
Jak to działa? Czyli o PII i PIQ.
Poniższy schemat przedstawia uproszczenie zasady działania sterowników PLC. Zamieszczam go tutaj, aby zwrócić uwagę na istotne mechanizmy (opis pełnej zasady działania znajdziesz w dokumentacji firmy SIEMENS), które są dla nas istotne.
Na początku cyklu, przed wejściem do OB1, sterownik sprawdza wszystkie swoje wejścia i zapisuje ich stany do PII (Process Image Input) – specjalnego obszaru pamięci odwzorowania wejść. Dzięki temu mamy pewność, że warunki (stany wejść), od których zależy przebieg procesu, nie ulegną zmianie podczas wykonywania cyklu. Jeżeli CPU wykonałby część OB1 z wysokim stanem wejścia I0.0, a drugą część z jego niskim stanem, mogłoby to prowadzić do nieprzewidywalnych konsekwencji.
W kolejnym kroku sterownik wykonuje program zapisany w OB1, kolejno przetwarzając networki od pierwszego do ostatniego. Jeśli w networku znajduje się zestyk z odpowiednim adresem, CPU sprawdza stan zapisany w PII i uwzględnia go (otwiera lub zamyka zestyk).
Jeśli w networku napotyka się na cewkę (zwykle na końcu networku), przepisuje jej stan na odpowiedni adres, który został wcześniej wpisany, ale nie na fizyczne wyjście, lecz do odpowiedniej komórki pamięci w PIQ (Process Image Output) – obszarze odwzorowania wyjść. Dopiero po wykonaniu ostatniego networku, stan całego PIQ zostaje jednocześnie przesłany na fizyczne wyjścia. Dzięki temu mamy pewność, że stany wyjść nie będą zmieniane wielokrotnie w trakcie jednego cyklu (co fizycznie mogłoby okazać się niemożliwe do zrealizowania). Dzięki obszarowi PIQ mamy również możliwość wpisywania adresu wyjścia nad zestykiem. To jednak nie pozwala nam sprawdzić, czy fizyczne wyjście jest aktywne, ale czy program w danym miejscu sugeruje, że powinno być.

Co z tego dla nas wynika?
PO PIERWSZE I NAJWAŻNIEJSZE
DANĄ CEWKĘ (z konkretnym adresem np. LAMPKĄ) MOŻNA WYSTEROWAĆ
W PROGRAMIE TYLKO ORAZ

Jeżeli cewkę lampki użyjemy w kilku networkach to nasza fizyczna żarówka będzie rozświetlać się wyłącznie od tej użytej najniżej. Wynika to z faktu, że każda cewka zmodyfikuje stan w PIQ, ale dopiero po wykonaniu ostatniego networku (ostatniej modyfikacji stanu lampki) zostanie on faktycznie przesłany na fizyczne wyjścia.

Co jeszcze warto wiedzieć
Po jednoczesnej aktywacji styków P1, P2, P7 i P8 LAMPKA nie zostanie wysterowana, ponieważ w przeciwieństwie do prądu w układach elektrycznych wysoki stan logiczny się nie cofa.

Warto przypomnieć, że TIA Portal ( i kilka innych programów ) nie pozwalają na stworzenie mostku (pustego obejścia styku).
Powyższy post to fragment z najnowszej wersji darmowego Podręcznika Programowania Sterowników PLC – „5xP PLC 1200”, który możesz pobrać z strony
5xP PLC 1200

WESPRZYJ FUNDACJE CALM EDU
SZKOLENIA DLA SZKÓŁ
Jeżeli jesteś przedstawicielem szkoły zainteresowanym przygotowaniem swoich nauczycieli do wyzwań edukacji 4.0 lub uczniów do egzaminów zawodowych, pójściem na studia czy przyszłą pracą z wykorzystaniem nowoczesnych technologi to zapraszamy do kontaktu.
Lista komercyjnych szkoleń dostępna pod tym linkiem.
Fundacja CALM edu dzieli się swoją wiedzą w całkowicie darmowy sposób i jest finansowana z środków prywatnych jej założyciela. Jeżeli jednak chcesz dołożyć swoją cegiełkę do rozwoju naszej fundacji i pomóc nam w przygotowaniu kolejnych darmowych ogólnodostępnych materiałów skorzystaj z komercyjnych szkoleń firmy CALM group, z których pośrednio przychód pozwala pokryć fundacyjne wydatki lub przekaż nam darowiznę na platformie Patronite (wkrótce)
Idea która nam przyświeca:
Głównym celem edukacji nie jest zdobycie wiedzy, a dopiero praktyczne jest wykorzystanie do zmieniania świata na lepsze, dlatego w ramach działań fundacji CALM edu chcemy nauczyć wszystkich ludzi o młodych umysłach (niezależnie od wieku) matematyki, fizyki, programowania, nowoczesnych technologii …. Wszystkiego tego co posłuży nam do budowania lepszego jutra.
Na tej stronie dowiesz się wszystkiego na temat naszych działań.
Podoba Ci się to co robimy i chciałbyś dołączyć do zespołu aby dzielić się swoja widzą i doświadczeniami ? Skontaktuj się z nami !!!
One thought on “Jak działa sterownik PLC”