AKADEMIA GÓRNICZO- HUTNICZA IM. STANISŁAWA STASZICA W KRAKOWIE LABORATORIUM PRZEMYSŁOWYCH SYSTEMÓW STEROWANIA Wydział Inżynierii Mechanicznej i Robotyki Katedra Automatyzacji Procesów Przedmiot: Przemysłowe Systemy Sterowania (PSS) Laboratorium 09: Programowanie paneli HMI interfejsy człowiek - maszyna Kraków
Cel ćwiczeń laboratoryjnych 1. Zapoznanie z budową i zasadą działania paneli HMI. 2. Poznanie strategii programowania paneli HMI. 3. Realizacja sterowania fizycznymi wejściami i wyjściami z poziomu panelu HMI Po ukończeniu zajęć student powinien potrafić: 1. Samodzielnie skonfigurować i skomunikować się z panelem HMI. 2. Potrafić obsłużyć i zaprogramować podstawowe elementy graficzne znajdujące się na panelu HMI. 3. Zrealizować interfejs dotykowy dla sterownika PLC do obsługi cyfrowych wejść/wyjść.
Wstęp Panel HMI (ang. Human Machine Interface) to specjalny interfejs dotykowy, który służy do zadawania i wyświetlania informacji przez Użytkownika urządzenia. Obecny w Laboratorium Panel HMI to Simatic KTP 600 Basic color PN. Panel ten ma wyświetlacz TFT o przekątnej 5,7 cala, rozdzielczości 320 na 240 pikseli. i wyświetlający 256 kolorów. Panel ma także 6 dowolnie konfigurowalnych przycisków, a komunikacja z PLC odbywa się za pomocą protokołu Profinet. Programowanie panelu odbywa się za pomocą oprogramowania WinCC, które jest zawarte w platformie TIA Portal. Konfiguracja Panelu HMI Rys. 1. Widok trybu Runtime panelu KTP600 Basic Color PN Panele serii Basic mają dwa tryby pracy - Boot loader (Rys. 3) oraz Runtime (Rys. 1). Po uruchomieniu systemu operacyjnego otwiera się Program Ładujący (Boot loader). Umożliwia on wykonanie trzech czynności: Transfer - ładowanie programu do panelu HMI Start - przejście do trybu pracy Runtime Control Panel - konfiguracja urządzenia HMI Program Ładujący obsługiwany jest za pomocą ekranu dotykowego. Aby przejść z trybu pracy Runtime do Programu Ładującego, należy nacisnąć przycisk Close Runtime (Rys. 2) Rys. 2. Przycisk zamykania trybu Runtime
Rys. 3. Widok boot loader oraz panelu sterowania Przed rozpoczęciem pracy z panelem HMI należy poznać jego adres IP. Wymagane jest, aby panel HMI znajdował się w tej samej podsieci, co współpracujące z nim PLC oraz komputer inżynierski. Aby poznać lub zmienić adres IP panelu HMI, należy w trybie Programu Ładującego nacisnąć Control Panel, a następnie kliknąć dwa razy w ikonę Profinet (Rys. 4) Rys. 4. Deklaracja adresu IP dla panelu HMI
Definicja HMI w TIA Portal W celu dodania panelu HMI do projektu należy, po wcześniejszym dodaniu sterownika PLC, w widoku Portal view nacisnąć Add new device, a następnie kliknąć w ikonę HMI (Rys. 5). Następnie należy odnaleźć urządzenie po numerze zamówieniowym (6AV6 647 0AD11 3AX0) znajdującym się w tylnej części obudowy panelu. Możliwe jest także dodanie panelu korzystając z zasady wykluczeń. W ramach dostępnych paneli 6 calowych można wybrać panele zwykłe lub w wersji Portrait. Są to te same panele, lecz o innej orientacji. Panele serii Portrait muszą być fizycznie zamontowane w pozycji wertykalnej. Zatem w trzech dostępnych panelach dostępne są dwa obsługujące połączenie Profinet (PN) i jeden obsługujący standard komunikacyjny Profibus (DP). Panele obsługujące Profinet dostępne są w wersji color i mono. W laboratorium dostępne są kolorowe, sześciocalowe panele HMI komunikujące się za pomocą PN. Po dodaniu urządzenia do projektu uruchomiony zostanie Konfigurator, który posłuży do wstępnej definicji wyglądu dostępnych ekranów (Rys. 6). W pierwszej kolejności należy nacisnąć przycisk Browse i zdefiniować sterownik PLC, do którego przyłączony jest panel HMI i utworzyć połączenie pomiędzy nimi. Należy także zdefiniować wersję firmware u. Z uwagi na fakt, że firmware jest aktualizowane poprzez sieć Profinet, to wybór wersji systemu operacyjnego jest dowolny, ponieważ i tak zostanie on zaktualizowany przy pierwszym wgraniu programu do HMI. Niemniej jednak zaleca się wybranie wersji 12.0.0.0, ponieważ ma ona więcej funkcjonalności niż wersja 11.0.0.0. Rys. 5. Dodawanie urządzeń HMI z widoku portalu Uwaga W celu uniknięcia serii problemów z połączeniem należy zawsze upewnić się, że podczas konfiguracji i programowania panelu HMI, współpracujący sterownik PLC znajduje się w trybie pracy offline.
Pozostałe ekrany konfiguratora mogą pozostać takie, jak sugerują ustawienia domyślne Kreatora konfiguracji lub być zmienione zgodnie z intencją projektanta. Rys. 6. Kreator konfiguracji panelu HMI Po dodaniu urządzenia TIA Portal przejdzie do trybu pracy Project View. W tym trybie należy dokonać dalszej konfiguracji urządzenia. Uwaga Istnieją dwa warunki konieczne, które należy spełnić, aby móc wgrać program do panelu HMI: Rzeczywisty adres IP panelu HMI musi być identyczny, jak zdefiniowany w TIA Portal Panel HMI musi znajdować się w trybie pracy Runtime lub w Boot loader musi być naciśnięty przycisk Transfer W widoku projektu należy kliknąć Devices and networks w drzewie projektu, a następnie kliknąć prawym przyciskiem myszy (PPM) na port Ethernetowy panelu HMI i wybrać opcję Properties (Rys. 7). W polu Ethernet Adresses należy wpisać odczytany wcześniej adres IP urządzenia rzeczywistego.
Rys. 7. Konfiguracja adresu IP panelu HMI w TIA Portal Programowanie panelu HMI Panele HMI programuje się za pomocą ekranów (ang. Screens). W drzewie projektu należy wybrać urządzenie HMI, a następnie Screens (Rys. 8). Domyślnym ekranem jest ekran Root Screen. Jest to ekran startowy, który wyświetla się jako pierwszy po przejściu panelu do trybu pracy Runtime. Po lewej stronie ekranu znajdują się podstawowe elementy i grafiki, dzięki którym można zaprogramować panel HMI. Zaleca się stosowanie konkretnej metodologii postępowania podczas programowania panelu HMI: 1. Definicja tagów na sterowniku PLC - wejścia muszą być obsługiwane za pomocą tagów z obszaru pamięci M - wyjścia mogą być obsługiwane za pomocą tagów z obszaru pamięci M 2. Obsługa GRAFIK I ANIMACJI w panelu HMI 3. Uzbrojenie grafik i animacji w funkcje Wejścia obsługuje się za pomocą zakładki Events Wyjścia obsługuje się za pomocą zakładki Animations 4. Realizacja logiki na sterowniku PLC 5. Wgranie programów W pierwszej kolejności do sterownika PLC W drugiej kolejności do panelu HMI W celu lepszego wytłumaczenia zasad programowania panelu HMI zaprezentowany zostanie przykład zastosowania powyższego algorytmu.
Rys. 8. Rozpoczęcie programowania panelu HMI Przykład W przykładzie użyty zostanie wirtualny przycisk monostabilny i wirtualna dioda plasowane na panelu HMI oraz fizyczny przycisk monostabilny (I0.0) z fizyczną diodą (Q0.0) połączone elektrycznie do sterownika s7-1200. Wirtualny przycisk będzie powodował przejście w stan wysoki fizycznego wyjścia, natomiast wciśnięcie fizycznego wejścia będzie powodowało ustawienie stanu wysokiego dla wirtualnej diody. Ad. 1. Definicja tagów na sterowniku PLC Należy zdefiniować cztery tagi w tagach PLC (Rys. 9). Bity pomocnicze dla wirtualnych wejść/wyjść muszą należeć do obszaru pamięci M. Rys. 9. Definicja tagów PLC
Ad. 2. Obsługa GRAFIK I ANIMACJI Należy przeciągnąć i upuścić z Toolbox na ekran HMI Button (zakładka Elements) oraz Circle (zakładka Objects). Elementy te posłużą do reprezentowania wirtualnych wejść/wyjść (Rys. 10). Rys. 10. Toolbox z podstawowymi elementami dla HMI Ad. 3. Uzbrojenie grafik i animacji w funkcje Po wstawieniu do projektu przycisku należy kliknąć na nim PPM, a następnie z menu wybrać opcję Properties i z menu na dole ekranu wybrać kartę Events (Rys. 11). Karta ta ma dwa pola: Akcji (Actions) oraz Funkcji (Functions). Akcje można zdefiniować jako fizyczne działania, które mogą zostać dokonane na przycisku. Funkcje to określone zdarzenia, które następują po wystąpieniu Akcji. Zdeklarowane jest 6 typów Akcji: Click - detekcja zmiany stanu z 1 na 0 (puszczenie przycisku) Press - detekcja zbocza narastającego (naciśnięcie przycisku) Release - detekcja zbocza opadającego (puszczenie przycisku) Activate - wyświetlenie elementu Deactivate - wygaszenie elementu Change - detekcja obydwóch zboczy. Po wybraniu Akcji Press należy kliknąć w pole Add function i wybrać funkcję SetBit. Następnie w polu Tagname kliknąć PLC Tags i wskazać zmienną zielonyhmi (Rys. 11). Aby zrealizować działanie monostabilne należy ponownie kliknąć w pole Add function i wybrać funkcję ResetBit. Następnie w polu Tagname kliknąć PLC Tags i wskazać tą samą zmienną - zielonyhmi. W tym wypadku należy interpretować w następujący sposób tą aktywność: jeśli uzbrojony element zostanie naciśnięty, to tag PLC o nazwie zielonyhmi zostanie ustawiony w stan wysoki, a po puszczeniu wirtualnego przycisku jego stan zostanie ustawiony na 0.
Po wstawieniu do projektu obiektu Circle należy kliknąć na nim PPM, a następnie z menu wybrać opcję Properties i z menu na dole ekranu wybrać kartę Animations. W polu Tagname należy wpisać nazwę wcześniej zdefiniowanego tagu diodahmi. W tabeli pod definicją tagu należy wprowadzić dwa rekordy - 0 raz 1. Następnie dla wartości 0, w kolumnie Background Color należy ustawić kolor czerwony, a dla wartości 1 - zielony. Rys. 11. Zbrojenie wirtualnego wejścia w interfejsie HMI W tym wypadku należy interpretować w następujący sposób tą aktywność: jeśli tag diodahmi będzie ustawiony w stan wysoki, wirtualna dioda będzie się świecić na czerwono. w przeciwnym wypadku będzie miała kolor czerwony. Ad.4 Realizacja logiki na sterowniku PLC Należy mieć świadomość, że panele serii Basic nie mają możliwości realizacji skryptów innych nich VBS. Służą one zatem tylko do INTERFEJSOWANIA działań (zadawaniu informacji lub wyświetlaniu informacji), a nie do realizacji logiki i sterowania. Jest to natywne działanie sterownika PLC. W tym wypadku zrealizowany został prosty program, w którym fizyczna dioda jest zapalana z bitu pomocniczego M10.0, a wirtualna dioda uruchamiana z użyciem fizycznego przycisku (Rys. 12).
Rys. 12. Program PLC realizujący funkcjonalność Przykładu Ad. 5. Wgranie programów Sugeruje się, aby przy wgrywaniu programu do projektu najpierw wgrać go do PLC, a dopiero później do HMI. Można to uczynić na kilka sposobów, ale najprostszym jest wgranie go za pomocą Devices and networks w drzewie projektu. Na każdym urządzeniu należy kliknąć PPM, a następnie w rozwiniętym menu należy wybrać Download to device, a następnie Software All (Rys. 13). W przypadku wgrywania do HMI pojawi się okno ładowania programu, w którym należy kliknąć przycisk Connect, a po połączeniu przycisk Load (Rys. 14). Rys. 13. Wgranie programu do HMI
Rys. 14. Połączenie z HMI Dodawania dodatkowych ekranów i nawigacja W celu obsługi większej ilości ekranów koniecznym staje się ich zadeklarowanie. Można to osiągnąć klikając w drzewie projektu w pole Root Screen, a następnie Add new Screen. W przypadku, gdy ekranem startowym ma być ekran inny niż Root screen, należy kliknąć na żądany ekran PPM, a następnie wybrać pozycję Define as a start screen. Nawigacja pomiędzy ekranami odbywa się za pomocą przycisków (Button). Przycisk należy skonfigurować tak jak w poprzednim przykładzie, ale w tym wypadku należy użyć w zakładce Events funkcji Activate Screen. Dostępne są trzy funkcje aktywujące ekrany: -Activate Previous Screen - załączenie poprzedniego ekranu -Activate Screen - aktywacja ekranu zadeklarowanego w pozycji Screen Name -Activate Screen by number - pozwala PLC na zdalne przełączanie ekranów z użyciem zmiennej typu Integer zawartej w polu Tagname W tak powstałych ekranach można wstawić grafiki z folderu grafik WinCC (Rys. 15) Rys. 15. Deklaracja grafik WinCC
Zadawanie/prezentowanie danych Istnieją 4 podstawowe sposoby prezentacji i wprowadzania danych dostępnych z przybornika elementów ekranu HMI. Są to: I/O field - pole wprowadzania/ odczytywania wartości Symbolic I/O field - menu kontekstowe/lista rozwijalna - wybór predefinowanej opcji Status bar - pasek stanu - wyświetlanie wartości w sposób graficzny Trend/Histogram - wykres obrazujący wartość zdefiniowanego taga Pole I/O field ma trzy tryby pracy. Po kliknięciu PPM w dane pole I/O field otwiera się okno właściwości (Rys. 16). W tym oknie należy zdefiniować zmienną, która będzie powiązana w polu Tag. Następnie wybrać jeden z trzech trybów pracy w polu Mode: Input - umożliwia wpisywanie wartości z poziomu HMI do zmiennej zdeklarowanej w polu Tag, Output - umożliwia wyświetlenie wartości zmiennej zdeklarowanej w polu Tag na panelu HMI, Input/output - łączy właściwości dwóch poprzednich trybów pracy. Ćwiczenie 1 Rys. 16. Konfigurowanie pola I/O field Wykonaj ćwiczenie z zaproponowanego przykładu Ćwiczenie 2 Typy wirtualnych przycisków Zadeklaruj dwie zmienne zielonyhmi - M10.0 oraz switchhmi - M10.2. Użyj dwóch elementów dla tych zmiennych - Button oraz Switch. Napisz program, w którym jedna ze zmiennych obsługuje fizyczne wyjście Q0.0, a druga fizyczne wyjście Q0.1. Zaobserwuj różnicę pomiędzy sposobem działąnia zadanych elementów. Dla przycisku Button zastosuj funkcję InvertBit.
Ćwiczenie 3 Zatrzaski: Wykonaj ekran HMI zaprezentowany na rysunku (Rys. 17). Zadeklaruj odpowiednie zmienne PLC Zrealizuj program, w którym wirtualne monostabilne przyciski zatrzaskują fizyczne wyjście Q0.0, a fizyczne wejścia I0.0 oraz I0.2 zatrzaskują wirtualną diodę na panelu HMI Ćwiczenie 4 Rys. 17. Realizacja zatrzasków Nawigacja pomiędzy ekranami: Zadeklaruj 3 dodatkowe ekrany Wykonaj nawigację pomiędzy ekranami w topologii pierścienia Zadeklaruj na każdym ekranie grafikę z folderu WinCC Ćwiczenie 5 Zadawanie/prezentowanie danych: Zadeklaruj zmienne według tabeli: Nazwa Typ Adres suma Bool M11.0 różnica Bool M11.1 mnożenie Bool M11.2
Składnik1 INT MW12 Składnik2 INT MW14 Wynik INT MW16 Wykonaj ekran do wprowadzenia składników działania i wyświetlania jego wyników za pomocą elementu I/O Field (18) Wykonaj program, który po naciśnięciu odpowiedniego przycisku wykonuje działanie dodawania/odejmowania/mnożenia i wyświetlenie wyniku Dołącz prezentację wyniku w postaci paska stanu. Dołącz prezentację wyniku w postaci trendu. Rys. 18. Widok kalkulatora