[KURS PLC, CZĘŚĆ 14] Sterowniki SIMATIC S7-1200 (CPU1211C) – diody LED na panelu przednim
Uwaga! Lista wszystkich opublikowanych odcinków kursu jest dostępna pod adresem.
W tej lekcji zajmiemy się odczytem z poziomu kodu programu informacji, które są widoczne na przednim panelu sterownika. Mowa o statusie pracy sterownika, czyli diodach LED przedstawionych na poniższym zdjęciu:
Każda z tych diod ma swoje znaczenie:
- STOP – stałe światło pomarańczowe
- RUN – stałe światło zielone
- stan inicjalizacji – naprzemienne miganie światła pomarańczowego (STOP) i zielonego (RUN)
- ERROR – migające lub stałe światło czerwone
- MAINT – stałe lub migające światło pomarańczowe; związane z kartą pamięci
Informację o statusie diodach można odczytać w kodzie programu. Sprawdźmy jak to zrobić.
Zadanie
Należy napisać kod programu, który pozwoli sprawdzić stan diody MAINT. Jeżeli ta dioda LED pulsuje, to w sterowniku PLC wyjście cyfrowe o adresie Q0.0 powinno wejść w stan wysoki.
| Zestaw startowy do kursu programowania SIMATIC S7-1200
Sklep KAMAMI.pl przygotował specjalną ofertę dla osób zainteresowanych poznaniem w praktyce możliwości sterowników SIMATIC S7-1200 oraz podstaw ich programowania. W ramach tej oferty dostępny jest zestaw startowy o nazwie Siemens SIMATIC S7-1200 PROMO w promocyjnej cenie (659 PLN brutto). Składa się on z następujących elementów:
|
Schemat elektryczny
Sposób podłączenia sterownika PLC przedstawiono na poniższym rysunku:
Wprowadzenie
Wraz z oprogramowaniem TIA Portal dostarczona jest funkcja do odczytu stanu każdej z diod znajdujących się na przednim panelu sterownika. Funkcja nazywa się LED(), a jej opis znajduje się w karcie instrukcji, dokładnie tutaj: Instructions/Extended instructions/Diagnostics. Przykładowe wywołanie przedstawiono poniżej:
#t_ReturnValue := LED(LADDR:=_word_in_, LED:=_uint_in_);
Jak widać, funkcja przyjmuje dwa parametry oraz zwraca jedną wartość przez parametr wyjściowy Return. W przykładowym wywołaniu ta wartość jest przypisywana do zmiennej tymczasowej typu Int o nazwie t_ReturnValue. Dokładny opis parametrów przedstawiono poniżej:
Do parametru LADDR funkcji LED() należy przypisać numer identyfikacyjny CPU. Numer ten jest przydzielany automatycznie podczas dodania sterownika PLC do konfiguracji sprzętowej. Można go znaleźć rozwijając folder PLC tags z drzewa projektu i otwierając tabele Show all tags. Wybieramy wówczas zakładkę System constants, którą przedstawia poniższy rysunek:
W zakładce znajdują się wszystkie numery identyfikacyjne sprzętu występującego w sterowniku oraz modułów zewnętrznych w przypadku ich dołączenia.
Natomiast do parametru LED należy przypisać numer identyfikacyjny diody LED, której stan chcemy odczytać. Wszystkie wartości przedstawia kolumna Description. Liczba 3 oznacza diodę MAINT.
Funkcja zwraca wartość mówiącą o aktualnym statusie danej diody i przypisuje ją do zmiennej t_ReturnValue. Wszystkie możliwe wartości, jakie może zwrócić funkcja LED() przedstawiono poniżej:
Znając aktualny status diod LED oraz ich znaczenie należy stworzyć funkcję odpowiednio reagującą na ich stan.
|
Dla zainteresowanych doskonaleniem programowania PLC Wydawnictwo BTC przygotowało książkę „Podstawy programowania sterowników SIMATIC S7-1200 w języku SCL”, której autorem jest autor naszego kursu, doświadczony projektant systemów automatyki – Tomasz Gilewski. |
Projekt TIA Portal
Tworzymy nowy projekt (o nazwie np. 14_LED), który konfigurujemy w ten sam sposób, jak w poprzednim odcinku.
Tworzymy nowa tablicę PLC tags o nazwie Output, co przedstawia poniższy rysunek:
W pierwszej linii kodu została wywołana funkcja LED(). Do parametrów tej funkcji została przypisana stała systemowa (Local~Common) określająca numer identyfikacyjny sterownika PLC, a do parametru LED została przypisana wartość 3 (określa diodę LED z przedniego panelu sterownika do odczytania).
Jeżeli wartość zwrócona przez funkcję LED() wynosi 4, 5 lub 6, to wyjście cyfrowe sterownika o nazwie symbolicznej StatusMAINT będzie w stanie wysokim. Realizuje to druga linia kodu.
Należy skompilować cały projekt i umieścić w pamięci sterownika.
Praca domowa
Dioda ERROR też może pulsować, jeżeli pojawił się błąd. Napisz analogiczny kod programu do odczytania statusu tej diody.
Tomasz Gilewski






Kliknąłeś podejrzany link? Co zrobić, aby uniknąć katastrofy?
Twórca koncepcji sztucznej inteligencji został wykastrowany, ale intelektualnie zapłodnił setki naśladowców
W jaki sposób wizja maszynowa poprawia bezpieczeństwo i wydajność automatyzacji 



