Serwer stron WWW w sterownikach z serii Siemens S7
| TechnikaPostęp w technice automatyzacji związany z wykorzystaniem standardu Ethernet wymusza coraz większą integrację z technologiami internetowymi. Coraz częstszym wymaganiem użytkowników jest dostęp do układu automatyki za pośrednictwem stron WWW i standardowej przeglądarki internetowej. W przypadku systemów automatyki Siemensa opartych na sterownikach PLC wizualizację i obsługę procesu produkcyjnego z poziomu przeglądarki WWW można zrealizować na dwa sposoby.
Pierwszy z nich wykorzystuje zewnętrzny procesor komunikacyjny Ethernet z wbudowanym serwerem, gdzie umieszczone są strony zawierające synoptykę obiektu włącznie z polami do wyświetlania i edycji danych oraz przyciskami sterującymi.
Drugim rozwiązaniem, niepociągającym za sobą dodatkowych kosztów zakupu zewnętrznego procesora komunikacyjnego, jest wykorzystanie nowej funkcjonalności jednostek centralnych.
Aktualnie oferowane procesory serii Simatic S7-300 i S7-400 z interfejsem Profinet/Ethernet mają wbudowany serwer WWW. Do jego parametryzacji i uruchomienia wprowadzone zostało oprogramowanie Web2Plc, integrowane z pakietem Step 7 w wersji 5.5 lub nowszej.
W artykule przedstawiamy funkcjonalność sterowników Simatic S7-300 i S7-400 oraz to, jak w praktyce uruchomić wbudowany w jednostki CPU serwer stron WWW i przygotować własną wizualizację obiektu dostępną z poziomu przeglądarki internetowej.
PODSTAWOWE STRONY WWW
Opcja web serwera została wprowadzona wraz z firmware’m 3.2 w przypadku sterowników S7-300 i ET200CPU oraz z firmwarem 6.0 dla sterowników PLC S7-400.
Na serwerze WWW, oprócz stron użytkownika, umieszczone są strony zawierające podstawowe informacje o systemie sterowania, podłączonych do niego urządzeniach oraz dane z pełną diagnostyką systemu.
Dane wyświetlane na stronie:
- Strona startowa – pokazuje podstawowe dane CPU oraz umożliwia logowanie do serwera CPU. Moduł interfejsu przedstawiony na stronie startowej z diodami LED odzwierciedla stan w czasie załadowania strony.
- Zakładka danych identyfikacyjnych przedstawia szczegółowe dane o CPU, takie jak numer seryjny CPU i wersję firmware’u.
- Zakładka Bufor diagnostyczny wyświetla do 500 wpisów z bufora diagnostycznego. Zdarzenia rejestrowane w tym buforze umożliwiają określenie potencjalnej przyczyny uszkodzenia lub zakłócenia w obrębie któregokolwiek komponentu systemu sterowania.
- Informacje o module – wyświetlane są informacje o statusie danego modułu, dzięki czemu umożliwia szybkie wykrycie awarii modułu. Aby aktywować wspomnianą zakładkę, należy wygenerować w oprogramowaniu Step bloki "raport system error". Opcję tę można aktywować w HW poprzez config → options → Raport system error.
- Wiadomości – zakładka ta umożliwia wyświetlanie komunikatów stworzonych w programie Step za pomocą komend Alarm S oraz Alarm D. Sposób tworzenia komunikatów został przedstawiony na stronie www.support.automation.siemens.com
- W zakładce Komunikacja możemy znaleźć szczegółowe informacje o parametrach połączenia, statystykach, zasobach oraz otwartych połączeniach.
- Zakładka Topologia umożliwia uzyskanie informacji na temat struktury i topologii stanu rządzeń w sieci Profinet IO. Pozwala także na wyświetlanie i porównanie graficznej struktury topologii skonfigurowanej w edytorze topologii Profinet IO w Step 7 oraz topologii rzeczywistej. Na rysunku 5 przedstawiono porównanie aktualnej struktury sieci ze strukturą zadaną.
- Zmienne statusowe – zakładka ta umożliwia bieżący podgląd danych w CPU.
- Zmienne tabelaryczne – zakładka ta umożliwia podgląd tablic VAT, dzięki czemu możemy szybko podglądać znaczące wartości w CPU. Aby aktywować tę funkcję, w każdej tablicy należy zaznaczyć pole Web Server (variable table → properties → general – Part 2 → Web Server).
STRONA WWW UŻYTKOWNIKA
Na zintegrowanym w CPU serwerze, w zależności od serii sterowników, uruchomić można dwie lub cztery strony WWW zaprojektowane przez użytkownika. Strony te mogą zawierać prezentację graficzną zautomatyzowanego obiektu z polami do wyświetlania i zadawania danych oraz wskaźnikami słupkowymi, jak również inne animowane obiekty zgodne ze standardem HTML.
Strony przechowywane są fizycznie na karcie MMC umieszczonej w CPU. Maksymalna ich wielkość wynosi 1 MB i ograniczona jest dodatkowo wolnym miejscem na karcie pamięci. Na rysunku 6 pokazano przykładową stronę zajmującą 150 kB pamięci.
KONFIGURACJA SERWERA WWW
Konfiguracja serwera stron WWW odbywa się w oprogramowaniu Step 7. Aby włączyć narzędzie konfiguracji, należy w edytorze konfiguracji sprzętowej HW config dwukrotnie kliknąć na skonfigurowane CPU oraz wyświetlić okno dialogowe Properties. Następnie należy wybrać zakładkę Web oraz skonfigurować serwer.
Podstawowe polecenia zakładki Web to:
- włączenie i wyłączenie serwera (polecenie Enable Web Server on his module)
- ustawienie języka stron serwera (Languages to be loaded on the CPU); można wybrać do 2 języków z dostępnych: angielskiego, niemieckiego, francuskiego, hiszpańskiego oraz włoskiego,
- konfiguracja użytkowników oraz uprawnienia użytkowników (User list),
- ustawienie automatycznego odświeżanie danych z podaniem interwału czasowego dla następujących elementów: strony głównej, danych identyfikacyjnych, zawartości bufora diagnostycznego, wiadomości, informacji o komunikacji, topologii, zmiennych statusowych oraz zmiennych tabelarycznych (Automatic Update),
- klasę wyświetlania wiadomości (Display Classes of the Messages),
- zmianę protokołu z HTTP na bardziej bezpieczny HTTPS (Allow access only via HTTPS).
Ze względu na fakt, że dane konfiguracyjne dla serwera sieci WWW przechowywane są na karcie MMC, zalecane jest stosowanie kart Simatic MMC o wielkości co najmniej 512 KB.
Do tworzenia strony internetowej można korzystać ze wszystkich opcji oferowanych przez języki HTML, JavaScript oraz CSS. Ponadto istnieje specjalna składnia poleceń AWP do stworzenia komunikacji z CPU. Na rysunku poniżej przedstawiono ogólny zarys wdrożenia rozwiązania.
PROCEDURA TWORZENIA STRONY
W programie Step 7 należy utworzyć nazwy symboliczne dla zmiennych, których chcemy użyć na tworzonej stronie HTML. Następnie za pomocą edytora – np. notatnika, front page lub innego programu tworzymy plik HTML, który zaimplementujemy w serwerze WWW CPU. Aby mieć dostęp do zmiennych CPU, należy użyć składki AWP.
Podstawowe jej komendy to:
- wyświetlanie zmiennych z CPU na stronie internetowej:
:="xyz":, gdzie "xyz" jest nazwą symbolu skonfigurowanego w Step 7
-
przekazywanie zmiennych z przeglądarki internetowej do CPU:
<!-- AWP_In_Variable Name=’"xyz"’ -->
....
<form method="get" action="" >
<input type="text" name=’"xyz"’ size="6" >
<input type="submit" value="wpisanie wartosci" >
</form> -
wyświetlenie danych z tabeli Array:
<!-- AWP_Start_Struct Name=’"db1"’ -->
<table border="1" width="120px">
<tr><td>Index</td><td>wartosc</td></tr>
<!-- AWP_Start_Array Name=’temperatura’ -->
<tr><td>pomiar T:=ArrayIndex:</td><td>:=value:</td></tr>
<!-- AWP_End_Array -->
</table>
<!-- AWP_End_Struct -->W tym przypadku db1 oznacza nazwę bloku, a temperatura – nazwę tablicy.
-
Łączenie zmiennych z tekstem w pliku HTML:
<!-- AWP_In_Variable Name=’"xyz"’ Enum="poziom" -->
<p>tekst <strong> :="xyz":</strong></p>gdzie xyz jest nazwą symbolu skonfigurowanego w Step 7, a poziom – wartością enum. Konfiguracja polecenia Enum: w "Web2plc" należy wybrać menu file → change Project settings → enum types
Następnym elementem jest, wykorzystując opcję "s7-web2plc", zaimportowanie symboli oraz zintegrowanie plików HTML wraz z wszystkimi plikami (np. zdjęciami). W przypadku małej ilości danych tworzony jest blok DB333, w przypadku większych plików tworzone są bloki od DB334 do 349.
W bloku OB1 należy wywołać funkcję SFC 99, a następnie skopiować program do CPU za pomocą Simatic Manager. Wykorzystując przeglądarkę internetową, należy sprawdzić działanie strony. Przykładową stronę pokazano na rysunku 12.
Stworzona strona jest wersją statyczną, która pobiera dane z CPU tylko przy jej załadowaniu. Dane odświeżyć można w przeglądarce za pomocą przycisku F5 lub użyć w nagłówku pliku HTML następującego kodu: <meta http-equiv="refresh" content="5; URL=przyklad.html">, gdzie wartość 5 oznacza odświeżanie strony co 5 s, a przykład.htm to adres odświeżanej strony.
W języku JavaScript kod ten będzie wyglądał następująco: <script language="Java-Script"> window.setTimeout("location.reload()",5000); </script>, gdzie wartość 5000 oznacza odświeżanie skryptu co 5 s.
Grzegorz Kozłowski
Siemens
www.siemens.pl/simatic