SIMATIC S7-1500 Software Controller
| Prezentacje firmowe ArtykułyNowoczesne układy sterowania to nie tylko sterowniki PLC wraz z modułami wejść i wyjść, modułami komunikacyjnymi i technologicznymi. Od współczesnych układów sterowania wymaga się często otwartości i realizacji wielu zadań jednocześnie w obrębie tego samego urządzenia. Środowisko przemysłowe wymaga natomiast niezmiennie od wielu lat niezawodności i pracy w reżimie 24 godziny na dobę, 7 dni w tygodniu, 365 dni w roku. Wszystkie te wymagania spełnia SIMATIC S7-1500 Software Controller.
NIEZALEŻNOŚĆ OD SYSTEMU OPERACYJNEGO
Przez wiele lat dla potencjalnych użytkowników układów sterowania bazujących na technologii PC niezawodność ich pracy była kryterium blokującym lub zniechęcającym do stosowania tego typu rozwiązań. O ile bowiem niezawodność samego sterownika PLC pracującego zazwyczaj pod kontrolą jądra systemu czasu rzeczywistego była na zadowalającym poziomie, o tyle ograniczała ją niezawodność systemu operacyjnego, na jakim to jądro było uruchomione.
Błąd pracy systemu operacyjnego komputera lub też błąd innej aplikacji pracującej na tym samym systemie operacyjnym powodował często awarię pracy sterownika PLC, a w ekstremalnych przypadkach nawet jego całkowite wyłączenie. Tego typu zachowania są oczywiście całkowicie nieakceptowalne w środowisku przemysłowym i mogą powodować znaczny wzrost kosztów związanych z przestojami maszyny.
A gdyby to jądro systemu czasu rzeczywistego było niezależne od standardowego systemu operacyjnego (zazwyczaj Windows)? Czy możliwa jest taka praca tych dwóch środowisk, która z jednej strony uodporni układ sterowania PLC na błędy Windows, a z drugiej strony pozwoli wykorzystać zalety otwartości systemu Windows na inne aplikacje, które współpracowałyby w ramach jednej platformy sprzętowej w środowisku przemysłowym?
Tego typu rozwiązaniem jest programowy sterownik PLC SIMATIC S7-1500 Software Controller pracujący na platformie sprzętowej komputerów SIMATIC IPC (fot. 1).
Najistotniejszą cechą tego rozwiązania jest odseparowanie zasobów sprzętowych dostępnych dla systemu Windows od zasobów niezbędnych do pracy układu sterowania PLC. Brak dostępu do niektórych zasobów pozostaje wręcz niezauważalny dla użytkownika i nie wiąże się dla niego z żadnymi istotnymi ograniczeniami, np. 400 MB pamięci dysku twardego czy kilkadziesiąt megabajtów pamięci operacyjnej.
Inne zasoby przydzielane do sterownika S7-1500S niosą za sobą wymaganie odnośnie do konfiguracji komputera. Takim zasobem jest jeden rdzeń procesora komputera, a więc minimalnym wymaganiem staje się komputer z procesorem przynajmniej dwurdzeniowym.
Rdzeń taki nie będzie widoczny we właściwościach systemu Windows (w Menedżerze zadań), podobnie jak jeden z portów Ethernet (LAN) komputera, który posłuży do komunikacji z wyspami wejść/wyjść sterownika PLC na sieci PROFINET IO.
Niesamowitą korzyścią wynikającą z takiego "zablokowania" systemowi Windows dostępu do tych zasobów sprzętowych jest niezależność pracy sterownika PLC od systemu operacyjnego. Oznacza to całkowity brak wpływu wydarzeń, takich jak zawieszenie się jakiegoś programu czy samego systemu operacyjnego, konieczność instalacji nowej aplikacji, konieczność zaktualizowania systemu, a co najważniejsze nawet jego zrestartowania, na pracę sterownika PLC.
Tak więc wywołanie polecenia z menu "Start -> Uruchom ponownie" spowoduje wprawdzie wyłączenie się aplikacji działających pod kontrolą Windows (np. samego panelu graficznego sterownika S7-1500 - jak na fot. 2, czy systemu wizualizacji WinCC), natomiast system sterowania wejściami/wyjściami, komunikacja z innymi PLC, komunikacja z urządzeniami peryferyjnymi - np. przemiennikami częstotliwości poprzez sieć PROFINET, będzie działać nadal i program sterownika PLC będzie realizowany bez najdrobniejszych zakłóceń.
A jak szybko taki sterownik wystartuje w przypadku uruchomienia maszyny od nowa? Przecież system Windows, którego instalacja pracuje od jakiegoś czasu na danym komputerze, potrafi uruchamiać się nawet kilka minut, zanim będzie można na nim normalnie pracować (znacznie szybciej, gdy użyjemy dysku SSD zamiast dysku mechanicznego).
S7-1500 Software Controller nie odbiega pod tym względem od standardowych sterowników S7-1500 i jako działający poza systemem Windows nie musi czekać na jego "pełne" uruchomienie się. Układ sterownika uruchamia się w takim samym czasie co program napisany na S7-1500 Software Controller na standardowym sterowniku PLC (czyli kilkunastu sekund). Dla użytkownika oznacza to, że uruchomienie maszyny lub procesu produkcyjnego rozpocznie się w takim samym czasie niezależnie od tego, czy zastosował sprzętowy sterownik PLC czy S7-1500S.
Demonstrując klientom takie rozwiązanie, często słyszę pytanie: "Czy sterownik PLC zainstalowany na tym komputerze będzie działał po wyłączeniu systemu Windows?" Na tak postawione pytanie odpowiadam zazwyczaj… pytaniem: "A co się stanie, gdy chcąc wyłączyć system Windows, klikniemy menu "Start -> Zamknij"?
Otóż wywoływane jest wtedy polecenie wyłączenia systemu operacyjnego, ale zaraz po nim również polecenie odcięcia zasilania od podzespołów komputera. Także sterownik PLC nie będzie pracować, ponieważ procesor, dysk twardy, pamięć RAM itd. nie są zasilane. Również i w tym aspekcie nie ma różnicy dla użytkownika - sterownik, któremu wyłączymy zasilanie, nie ma prawa działać.
OTWARTOŚĆ SYSTEMÓW PC-BASED
Otwartość systemów sterowania bazujących na technologii PC jest w porównaniu ze standardowymi sterownikami PLC ich najważniejszą zaletą wykorzystywaną przez wielu użytkowników. Zastosowanie sterownika PLC na platformie sprzętowej, na której działa również system operacyjny Windows, pozwala powierzyć mu część wykonywanych zadań, które znacznie łatwiej wykonać właśnie w jego środowisku.
Przykładem mogą być skomplikowane obliczenia, które łatwiej i szybciej można wykonać w języku wysokiego poziomu, takim jak C++ w aplikacji stworzonej specjalnie do tego celu. Również zadania, takie jak wizyjna kontrola jakości produktu za pomocą dedykowanych aplikacji, znacznie uproszczą układ sterowania.
Klienci wymagający, by system sterowania i wizualizacji zajmował fizycznie mało miejsca, docenią możliwość instalacji na jednym komputerze SIMATIC IPC zarówno sterownika S7-1500 Software Controller, jak i różnych systemów wizualizacji, łącznie z systemami klasy SCADA. Konstruktorzy oszczędzą w ten sposób miejsce w szafie sterowniczej, a co za tym idzie, zmniejszą koszty powstania takiej szafy.
Wymiana danych między S7-1500 Software Controller i aplikacją systemu Windows odbywa się za pomocą specjalnych bibliotek ODK (Open Development Kit), które pozwalają na dwukierunkową wymianę informacji - zapisywanie i odczytywanie danych do/z plików systemu Windows. Mało tego, pakiet ODK zawiera również aplikację Eclipse pozwalającą na wymianę danych w czasie rzeczywistym między działającymi równolegle aplikacjami.
Ich konfiguracja jest stosunkowo prosta dla osób znających języki programowania wysokiego poziomu, a wgranie projektu polega na wgraniu plików przez przeglądarkę internetową do odpowiednich folderów systemu operacyjnego, do czego służy web serwer wbudowany w S7-1500 Software Controller.
A co z użytkownikami, którzy nie mają doświadczenia w zaawansowanych językach programowania? Dla nich przygotowane zostały gotowe biblioteki, które wykorzystujemy po stronie sterownika S7-1500 Software Controller (np. SQL Driver, XML Data Access, File Server), i przykłady aplikacji, które można wykorzystać w realizowanych projektach.
JAK TWORZYĆ APLIKACJE NA S7-1500S?
Czy pisanie programów na Software Controller jest skomplikowane? Gdy ma się doświadczenie w pisaniu aplikacji na standardowe sterowniki PLC, niezbędne jest jakieś specjalne dodatkowe szkolenie? Czy jeśli tylko część moich maszyn wymaga otwartości dostępnej w systemach PC-based, a do pozostałych wystarczy standardowy sterownik PLC, to muszę pisać aplikację od nowa? Na wszystkie te pytania odpowiedź brzmi: nie!
S7-1500S programujemy w standardowym środowisku TIA Portal, tak jak każdy inny sterownik S7-1500. Różnicą jest tu jedynie konfiguracja sprzętowa, w której zamiast CPU i modułów rozszerzeń na magistrali wstawiamy komputer z rodziny SIMATIC IPC i w nim S7-1500 Software Controller (opcjonalnie również system wizualizacji np. WinCC Runtime Advanced).
W drzewie projektu pojawi się wtedy gałąź sterownika S7-1500S identyczna z tą dla standardowych sterowników S7-1500. Później możemy już tworzyć standardową aplikację jak na każde inne S7-1500 albo wykorzystać stworzone wcześniej programy czy biblioteki dla tego sterownika (fot. 3).
Różnica zaczyna się w momencie dodawania funkcjonalności wymiany danych z systemem Windows, która polega na... wstawieniu odpowiednich bloków funkcyjnych (np. pobranych z przykładowej aplikacji znajdującej się tutaj: https://support.industry.siemens.com/cs/pl/en/view/106192387) i ich sparametryzowaniu. Te czynności są także dokładnie takie same jak te, które wykonujemy przy tworzeniu każdej innej aplikacji na sterownik PLC.
WYDAJNOŚĆ I SKALOWALNOŚĆ
A jak szybki jest to sterownik PLC? Czy programy działające pod kontrolą systemu Windows mogą wpłynąć na cykl pracy sterownika PLC? Czy w razie potrzeby rozbudowy aplikacji będzie można dodać moduły rozszerzeń?
Wydajność CPU S7-1500S pracującego na komputerze SIMATIC IPC jest porównywalna z CPU 1518-4 PN/DP, a więc najmocniejszego obecnie CPU w rodzinie S7-1500. Czas przetwarzania operacji na bitach, na słowach i na zmiennych stałoprzecinkowych jest identyczny, a w przypadku operacji zmiennoprzecinkowych czas przetwarzania jest trzykrotnie krótszy dzięki architekturze procesorów w SIMATIC IPC.
Jak już wcześniej zaznaczono, S7-1500S pracuje niezależnie od systemu Windows i ma zasoby sprzętowe odseparowane od niego, więc żadna aplikacja nie będzie miała wpływu na cykl pracy sterownika (m.in. dzięki oddzielnemu rdzeniowi procesora dla S7-1500S).
Skalowalność aplikacji w przypadku zbudowanej na bazie sieci PROFINET IO polega na możliwości dodawania nowych wysp wejść/wyjść lub rozbudowywania już istniejących. Korzyścią dla użytkownika jest tu praktycznie pełna swoboda dodawania nowych komponentów i modułów rozszerzeń.
Open ControllerSterownik ET 200SP Open Controller jest specjalną odmianą S7-1500 Software Controllera. Jest to komputer z domyślnie preinstalowanym sterownikiem S7-1500S (wydajność jak dla CPU 1516-3 PN/DP), ale w konstrukcji mechanicznej systemu ET 200SP. Przewagą tego rozwiązania, poza jego kompaktową obudową, jest możliwość podłączenia bezpośrednio do niego modułów rozszerzeń od ET 200SP za pomocą magistrali backplane.Jak w przypadku każdego S7-1500 można do niego podłączać urządzenia na magistrali komunikacyjnej PROFINET IO, jednak dla bardziej kompaktowych aplikacji - wymagających użycia kilku modułów rozszerzeń (maks. 64) i jednocześnie wymiany danych z zainstalowanym na nim systemem Windows - taki sterownik typu PAC będzie na pewno ciekawym i opłacalnym rozwiązaniem. Jako że jest to również komputer z systemem WES7, można na nim zainstalować dowolny program lub skorzystać z możliwości użycia na nim preinstalowanego systemu wizualizacji WinCC Runtime Advanced (opcja). |
PODSUMOWANIE
Od współczesnych układów sterowania wymagamy coraz więcej, co powoduje, że standardowe rozwiązanie stosowane przez lata w naszych aplikacjach nie zawsze może spełnić te wymagania. S7-1500 Software Controller pozwala zaspokoić znaczną część tych wymagań dzięki jego otwartości, uniwersalności i możliwościom rozbudowy.
Jednocześnie dzięki platformie sprzętowej, na której jest on instalowany, czyli komputerom SIMATIC IPC, zapewnia on niezawodność niezbędną w przemyśle, ciągłość pracy w reżimie 24/7 i bezpieczeństwo inwestycji dzięki sprawdzonej marce Siemens.
Michał Urliński
Promotor SIMATIC IPC
Siemens Sp. z o. o.
www.siemens.pl