Biblioteki .Net do komunikacji ze sterownikami PLC Siemens – projekty testowe

0
4

Witaj w kolejnej części cyklu o bibliotekach .Net do komunikacji ze sterownikami Siemensa.

Moim zdaniem najlepiej uczyć się nowych rozwiązań za pomocą działających przykładów. W związku z tym, zamiast prezentować “na sucho” działanie bibliotek zdecydowałem się przygotować trochę kodu, który pozwoli je przetestować w praktyce. W związku z tym przygotowałem projekt prostego programu dla sterownika oraz szkic prostej aplikacji WinForms, która posłuży nam do testów.

Program sterownika przygotowany jest dla PLC S7-1200 w środowisku TIA Portal V14 SP1. Zdecydowałem się na takie rozwiązanie, ponieważ jest to najpopularniejsza seria przystępnych cenowo sterowników oferowanych przez Siemens-a. Projekt taki bardzo łatwo można przekształcić też na projekt dla sterownika S7-1500. Nie mam w tej chwili niestety dostępu do najprostszego sterownika LOGO!, który jest programowany za pomocą innego narzędzia.

Powstaje w ten sposób pewne ograniczenie, które wymaga posiadania sterownika do przetestowania komunikacji, ale zakładam że osoby zainteresowane tym cyklem postów czytają go raczej z założeniem, że taką komunikację będą wcześniej czy później realizować – a więc posiadają samo urządzenie.

Sterownik S7-1200 można kupić stosunkowo niedrogo w formie zestawu startowego np. w sklepie Kamami

Do załadowania programu w zupełności wystarczy wersja Trial oprogramowania TIA Portal.

PROGRAM STEROWNIKA

Do wglądu/pobrania z https://github.com/pstrejczek/PlcNetLibrariesS7TestProject

W projekcie wykorzystałem samo CPU 1212 w wersji AC/DC/RLY (zasilane z 230V). W przypadku wykorzystania innego sterownika trzeba dokonać podmiany w konfiguracji hardware projektu.

Trzeba również przypisać odpowiedni adres IP, aby sterownik był dostępny w sieci w której chcemy się z nim komunikować.

Sam program jest bardzo prosty. W bloku danych DB10 znajdują się parametry, które będziemy wymieniać ze sterownikiem.

Program inkrementuje licznik przechowywany w zmiennej CurrentValue aż do osiągnięcia wartości SetPoint a następnie resetuje się do wartości 0. Ustawienie bitu Start spowoduje rozpoczęcie odliczania, natomiast ustawienie bitu Stop powoduje zakończenie odliczania i wyzerowanie CurrentValue. Zmienna ProcessInProgress będzie nas informować czy proces odliczania trwa, czy też nie.

APLIKACJA .NET

Znajduje się na github: https://github.com/pstrejczek/PlcNetLibraries

To będzie prosta aplikacja w Windows Forms, która zapewni nam podstawowe GUI pozwalające testować komunikację. Warstwę komunikacyjną bazującą na różnych bibliotekach będziemy podłączać w formie bibliotek dll. Wydaje mi się, że takie rozwiązanie będzie tutaj najlepsze. Póki co, repozytorium zawiera jedynie wstępny szkic, który będzie rozwijany wraz z opisami kolejnych bibliotek.

W następnej części zajmiemy się (nareszcie 🙂 ) konkretnie pierwszą z bibliotek.

ZOSTAW ODPOWIEDŹ

Please enter your comment!
Please enter your name here