[KURS PLC, CZĘŚĆ 4] Sterowniki SIMATIC S7-1200 – obsługa wejść cyfrowych

Uwaga! Lista wszystkich opublikowanych odcinków kursu jest dostępna pod adresem.

W poprzednim odcinku kursu programowania PLC (bazujemy na sterowniku SIMATIC S7-1200) pokazaliśmy jak stworzyć prosty projekt, który nazwaliśmy Hello World. Na jego przykładzie poznaliśmy sposób tworzenia projektu, a także obsługę wyjść cyfrowych sterownika.

W tym odcinku kursu zajmiemy się wejściami cyfrowymi i obsługą przycisku dołączonego do wejścia PLC. Napiszemy prosty program, którego zadaniem będzie zaświecenie diody LED w chwili naciśnięcia przycisku.

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:

  • sterownika SIMATIC S7-1200 (CPU1211C, 6ES7211-1AE40-0XB0),
  • przełącznika SIRIUS ACT NO+NC zintegrowanego z LED (3SU1031-3BB61-0AK0, 3SU1500-0AA10-0AA0, 3SU1400-1AA10-1BA0, 3SU1400-1AA10-1CA0, 3SU1401-1BB60-1AA0),
  • oprogramowania w wersji eval.

 

1. Połączenia elektryczne

Do wejścia cyfrowego w sterowniku podłączymy przycisk. Schemat przedstawiono poniżej.

Podłączenie elektryczne sterownika oraz diody LED jest takie samo, jak w poprzednim odcinku. Pozostało tylko podłączenie przycisku. Aby wejścia cyfrowe mogły wykryć zmianę stanu napięcia, to należy do złącza 1M podłączyć ujemny potencjał zasilania.

Do złącza .2 podłączamy styk przycisku (jedną stronę styku) oraz do dodatniego potencjału zasilania (druga strona styku).

Przyciski można podzielić ze względu na rodzaj styków. Można wyróżnić dwa rodzaje: NO (normal open) oraz NC (normal close). Do sterownika podłączono styk NO. Na filmie demonstrującym działanie programu użyto specjalnej płytki symulacyjnej z przyciskami , o numerze zamówienia 6ES7 274-1XF30-0XA0. Płytka ta ma 11 wyprowadzeń, które podłączamy odpowiednio do styków L+, M, 1M, .0.1, .2, .3,  .4, .5 sterownika.

Przykładowe podłączenie przedstawiono na zdjęciu poniżej.

2. Projekt

Tworzymy nowy projekt o nazwie 03_Button. Należy dodać sterownik PLC oraz przeprowadzić konfigurację sprzętową.

Do wejścia cyfrowego podłączamy przycisk. Pewnie słyszałeś o drganiach styków, które są związane z naciśnięciem lub zwolnieniem przycisku. Poniżej rysunek przedstawiający przykładowe drgania styków.

 

Widzimy, że po naciśnięciu przycisku przez pewien okres czasu (rzędu milisekund) pojawia się kilkukrotna, losowa zmiana poziomu logicznego sygnału. Dopiero po chwili stan logiczny się stabilizuje. Takie drgania są po prostu zakłóceniem, który może niekorzystnie wpłynąć na przebieg wykonywanego kodu.

Jeżeli programowałeś mikrokontrolery, to podczas obsługi przycisku pisałeś kod zabezpieczający przed takimi drganiami styków. Polegało to na sprawdzaniu stanu logicznego przycisku w jednakowych odstępach czasu.

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.

Programiści firmy Siemens również przewidzieli konieczność eliminacji zakłóceń podczas pracy ze sterownikiem PLC. Przygotowali ustawienie, które sprawdza stan logiczny na wejściu cyfrowym co zadany czas. Domyślna wartość to 6.4 ms. Czas ten można zmienić w konfiguracji sprzętowej sterownika. Należy przejść do zakładki DI 6/DQ 4 i następnie Digital inputs. Konfiguracja została przedstawiona na poniższym rysunku.

 

Dzięki tej opcji nie musisz już pisać dodatkowego kod do obsługi drgań. Wystarczy zmierzyć maksymalny czas drgań i następnie ustawić dłuższy czas w polu Input filters. Na początku zostań przy domyślnym ustawieniu 6,4 ms.

 

Kod programu

Pisanie kodu programu zaczniemy od utworzenia nowych tablic PLC tags. W celu zwiększenia przejrzystości projektu utworzymy dwie tablice. Pierwsza o nazwie Input zostanie przeznaczona dla wejść cyfrowych natomiast druga o nazwie Output posłuży do umieszczenia nazw symbolicznych dla wyjść cyfrowych. Utworzone tablice przedstawiono poniżej.

W każdej z tablic umieszczono odpowiedni tag.

Podobnie, jak w poprzednim projekcie, dodajemy blok OB1 z wybranym językiem SCL. Następnie umieszczamy w tym bloku kod programu przedstawiony poniżej.

“LedBlue” := “Button”;

Ta linia kodu działa w taki sposób, że poziom logiczny z wejścia cyfrowego jest przekazywany na wyjście cyfrowe. Jeżeli przycisk jest wciśnięty, to na wejściu cyfrowym jest stan wysoki. W tym momencie dioda LED świeci. Jeżeli przycisk jest zwolniony, to na wejściu cyfrowym jest stan niski. Wówczas dioda LED nie świeci.

 

Programowanie sterownika

Ostatni etap pracy z projektem to kompilacja i programowanie sterownika. Procedura i sposób postępowania jest taki sam, jak w projekcie Hello world z poprzedniego odcinka.

Należy na początku skompilować cały projekt. Jeżeli nigdzie się nie pomyliłeś, to w oknie nadzoru zobaczysz wynik mówiący o braku błędów.

Teraz wykonaj programowanie sterownika.

 

3. Testowanie

Jeżeli zakończyłeś programowanie sterownika i masz poprawnie podłączony elektrycznie sterownik, to sprawdź działanie całego układu. Czy naciśnięcie przycisku powoduje zapalenie diody LED. Powinieneś widzieć coś podobnego, jak przedstawiono na poniższym rysunku.

Na panelu przednim sterownika są wbudowane diody LED informujące o poziomie logicznym wejść i wyjść cyfrowych. Widzisz, że każda z tych diod świeci, czyli na wejściu cyfrowym oraz wyjściu cyfrowym panuje stan wysoki.

Działanie programu przedstawia poniższy wykres.

Tomasz Gilewski

Do pobrania

O autorze