Jak wizualizować zmienne analogowe oraz jak modyfikować ich wartości przy pomocy obiektów graficznych?
Kurs programowania sterowników Horner APG w środowisku Cscape 10, odc. 12
Kontakt w sprawie artykułu: Mateusz Pytel - 2025-09-18

W tym odcinku rozbudujemy aplikację o trzy kolejne ekrany operatorskie, które posłużą do reprezentowania stanów zbiorników przy pomocy animowanych obiektów graficznych.
Kurs programowania sterowników Horner APG w środowisku Cscape 10
Wprowadzenie i podstawy
1. Jak skonfigurować, podłączyć oraz uruchomić sterownik PLC?2. Jak tworzyć i edytować projekty w oprogramowaniu Cscape 10?
Programowanie w języku drabinkowym
3. Jak tworzyć oraz konfigurować bazę zmiennych w środowisku Cscape?4. Jak korzystać ze styków, cewek i bloków operacji arytmetycznych w programie sterującym?
5. Jak odmierzać czas w programie sterującym i jak konfigurować timery?
6. Jak porównywać wartości i wykorzystać wyniki operacji logicznych?
7. Jak zliczać impulsy i konfigurować liczniki?
8. Jak konwertować typy zmiennych i przemieszczać zmienne w programie?
9. Jak sterować wykonywaniem programu logicznego? Instrukcja skoku warunkowego?
Programowanie zintegrowanego panelu HMI
10. Jak budować ekrany operatorskie z obiektami do wizualizacji i zadawania wartości zmiennych?11. Jak umożliwić nawigację między ekranami operatorskimi oraz jak korzystać z gotowych obiektów graficznych w środowisku Cscape?
12. Jak wizualizować zmienne analogowe oraz jak modyfikować ich wartości przy pomocy obiektów graficznych?
13. Jak korzystać z obiektu menu?
14. Konfiguracja i obsługa alarmów w sterownikach PLC.
15. Trend Graph.
Poziom zbiornika prezentowany będzie za pomocą wykresu słupkowego i miernika, natomiast czasy grzania i mieszania (z możliwością ich zmiany) za pomocą obiektu suwaka.
Krok 2: Dodanie nowego ekranu.
Otwórz edytor graficzny i znajdując się na ekranie 2, stwórz nowy ekran korzystając z zakładki Project Navigator -> User Interface. Wskaż okno Main Screen i za pomocą prawego klawisza myszy wybierz opcję New Screen.

Zgodnie z przyjętą zasadą w górnej części ekranu umieść tekst statyczny z nazwą ekranu – możesz skopiować go z poprzednich ekranów i zmienić jego treść na „Zbiornik 1”.
W celu wizualizacji zbiornika, na ekranie 2 – przytrzymując klawisz CTRL – zaznacz grafikę zbiornika i połączonych z nim górnych rur oraz zaworu, a następnie skopiuj je i wklej na ekran numer 3. Kolejno, powiększ grafikę zbiornika, skopiuj rury i zawór znajdujące się po jego lewej stronie i wklej je po prawej stronie u dołu obiektu, tak jak wskazuje poniższa grafika:

Krok 2: Jak dodać i skonfigurować obiekt Bar Graph dostępny w oprogramowaniu Cscape?
Wnętrze zbiornika wypełnij wykresem słupkowym, który będzie monitorował poziom wody w zbiorniku. W tym celu w oknie Project Toolbox przejdź do zakładki Live Graphic Data i wybierz Bar Graph. Rozszerz dodany obiekt, tak by był prezentowany w pozycji pionowej i wypełniał wnętrze zbiornika.


Przechodząc do konfiguracji wykresu w pierwszej kolejności w sekcji Data Source w polu Variable przypisz do niego zmienną Zbiornik_1_INT. Obiekt pracuje tylko z 16-bitowymi rejestrami, więc zmienna nie może być typu REAL (tak, jak Zbiornik_1).
Następnie w sekcji Data Range skonfiguruj sposób wyświetlania obiektu. Ustaw poziom minimalny na 0, poziom maksymalny na 50. W sekcji Scale -> Ticks ustaw liczbę podziałek na 5. W zakładce Display Properties -> Fill Color zmień kolor wypełnienia na ciemnoniebieski.

Krok 3: Jak dodać i skonfigurować obiekt Meter dostępny w środowisku Cscape?
Wykorzystamy obiekt Meter, który również posłuży do wizualizacji stanu zbiornika. W oknie Project Toolbox w zakładce Live Graphic Data wybierz Meter, a następnie umieść obiekt nad zbiornikiem.


Przechodząc do jego konfiguracji przypisz zmienną Zbiornik_1_INT, następnie skonfiguruj skalę. Liczba podziałek niech będzie równa 6, wartość minimalna niech wynosi 0, a maksymalna 50. W opcjach wyświetlania skonfiguruj Legend wpisując w otwartym oknie treść „Litrow”.


Krok 4: Dodanie przycisków sterujących.
Pod zaworami umieść przyciski służące do sterowania zaworem napełniającym i opróżniającym. W tym celu skopiuj przygotowane przełączniki na ekranie numer 2 i wklej je na ekranie numer 3.

Ostatnim elementem tego ekranu będzie obiekt Screen Jump, umożliwiający nawigację do ekranu, z którego został wywołany.
Wybierz odpowiednią ikonę w zakładce Touch Objects i umieść element w prawym dolnym rogu. Zaznacz opcję Simulate ESC. Przechodząc do konfiguracji wyświetlania, wybierz opcję Legend, wprowadź tekst „Powrot”, wyśrodkuj tekst i wybierz czcionkę Canvas 10.


Krok 5: Jak skopiować przygotowany ekran operatorski?
Tak przygotowany ekran można skopiować dla zbiornika 2 i zbiornika 3. W tym celu zaznacz wszystkie elementy znajdujące się na ekranie przygotowanym dla zbiornika 1, korzystając ze skrótu klawiszowego CTRL+A, a następnie skopiuj je do schowka. Utwórz nowy ekran i wklej skopiowane elementy.
W pierwszej kolejności zmień treść pola tekstowego, informującego o nazwie ekranu, na „Zbiornik 2”. Kolejno do elementów Meter oraz Bar Graph przypisz zmienną Zbiornik_2_INT. Dla przełącznika górnego ustaw zmienną Zawor_napelniajacy_ZB2, a dla dolnego Zawor_oprozniajacy_ZB2.
Ekran dla zbiornika numer 2 jest gotowy.

Utwórz zatem kolejny pusty ekran i ponownie wklej skopiowaną zawartość. Zmień treść pola tekstowego na „Zbiornik 3”. Do elementu Meter przypisz zmienną Zbiornik_3_INT. Usuń natomiast obiekt Bar Graph.
Skopiuj zawór oraz rury służące do napełniania zbiornika znajdujące się po jego lewej stronie i wklej je po prawej stronie na wysokości znajdującego się już elementu napełniającego. Skopiuj również przełącznik służący do jego sterowania, tak jak przedstawia poniższa grafika:

Do górnych przełączników służących do napełniania przypisz zmienne Zawor_oprozniajacy_ZB1 oraz Zawor_oprozniajacy_ZB2. Natomiast do dolnego przełącznika służącego do opróżniania zbiornika przypisz zmienną Zawor_oprozniajacy_ZB3.
Teraz w miejsce usuniętego Bar Graph wstaw nowe grafiki przedstawiające grzałkę i mieszadło. W tym celu przejdź do biblioteki, wybierz zakładkę Mixers, a z niej odpowiednią grafikę mieszadła. Opcjonalnie możesz ustawić jej atrybut Fill Color Mode na Solid.


Następnie przejdź do zakładki Process Heating i wybierz następującą grafikę grzałki:

W dodanych elementach możesz skonfigurować transparentne tło.
Ułożenie elementów na zbiorniku może wyglądać następująco:

Krok 6: Jak kontrolować wyświetlanie gotowych elementów graficznych za pomocą programu sterującego?
Aby grafiki widoczne były tylko w momencie mieszania lub grzania, trzeba skonfigurować dodatkowe atrybuty związane z wyświetlaniem obiektów i powiązać je z odpowiednimi bitami rejestrów, których stan będzie decydował o wyświetlaniu grafik.
Zamykając edytor ekranów przejdź do programu sterującego, który uzupełnisz o logikę modyfikującą stany odpowiednich rejestrów kontrolnych.
W tym celu w oknie Program Variables dodaj dwie nowe zmienne programowe.

Następnie w podprogramie Mieszanie_Grzanie dodasz kolejne dwa szczeble.
Powyżej szczebla ze stykiem „Serwisowanie” wstaw kolejno dwa styki normalnie otwarte. Do pierwszego z nich przypisz zmienną mieszanie, a do drugiej zmienną czasową o nazwie T_SEC. Wstaw także cewkę i połącz ją ze zmienną R40.1 o adresie %R00040.
Następnie skopiuj stworzony szczebel i wklej go poniżej. Do pierwszego styku przypisz zmienną grzanie, a do cewki zmienną R41.1 o adresie %R00041.

Dzięki tym szczeblom stan bitu 1 rejestru R40 i R41 będzie zmieniał się z częstotliwością jednej sekundy, gdy zmienne mieszanie i grzanie będą miały stan wysoki. Możemy wykorzystać te bity do odpowiedniego wyświetlania grafiki mieszadła i grzałki.
Przejdź w tym celu do edytora ekranu o nazwie Zbiornik 3 i wyświetl okno konfiguracji grafiki mieszadła, klikając na nią dwukrotnie. Następnie wybierz opcję Attributes widoczną w dolnej części okna. Tam zaznacz opcję Bit 1 i w polu o nazwie Override Variable wpisz rejestr o adresie R40. Taka konfiguracja sprawi, że wyświetlanie grafiki mieszadła będzie kontrolowane przez bit 1 rejestru R40 i będzie ona widoczna w momencie, gdy zmienna R40.1 będzie miała stan wysoki.


Taką samą czynność powtórz dla grafiki grzałki, z tym że w polu Override Variable wprowadź rejestr o adresie R41.
Krok 7: Dodanie przełączników sterujących procesem grzania i mieszania
Skopiuj dowolny przełącznik znajdujący się na ekranie Zbiornik 3 i wklej go dwukrotnie. Przypisz do skopiowanych obiektów zmienne mieszanie i grzanie. Dzięki temu możliwe będzie załączanie i wyłączanie tych procesów również z poziomu tego ekranu operatorskiego. Przejdź też do konfiguracji pola Legend tych przełączników i wprowadź treści „Mieszanie” oraz „Grzanie” tak by odpowiednio podpisać przełączniki.

Krok 8: Jak dodać i skonfigurować obiekt Slider dostępny w oprogramowaniu Cscape?
Ostatnim elementem, który dodasz do komponowanego ekranu, będą obiekty suwaka. Posłużą one do zadawania czasu mieszania i grzania. W tym celu z wybierz ikonę Slider i przejdź do konfiguracji obiektu.

Z listy dostępnych zmiennych wybierz Czas_mieszanie, wartość minimalną ustaw na 0, a maksymalną na 100, liczbę podziałek skali ustaw na 5. Zaznacz opcję Show Slider oraz Show Inc / Dec Buttons. W oknie Legend dodaj tekst „Czas mieszania”.

W analogiczny sposób dodaj i skonfiguruj suwak służący do zadawania czasu grzania, przypisując zmienną Czas_grzanie, a legenda niech zawiera tekst „Czas grzania”.

Tym samym ekran dla zbiornika 3 jest odpowiednio skompletowany.
Wizualizacja procesu mieszania i grzania na panelu HMI sterownika Horner Canvas 7D:


Krok 9: Wywołanie ekranów operatorskich przedstawiających zbiorniki
Teraz trzeba uzupełnić aplikację wizualizacyjną o elementy służące do wywoływania ekranów przedstawiających zbiorniki.
W tym celu na ekranie operatorskim o nazwie Ekran 2 dodaj obiekt Screen Jump i przejdź do jego konfiguracji.
Zbiornik 1 był przedstawiony na ekranie numer 3, Zbiornik 2 na ekranie numer 4, a Zbiornik 3 na ekranie numer 5.
Zgodnie z powyższą numeracją, numer ekranu docelowego (Address/Screen Number) dodanego obiektu to 3. Zaznacz opcję Allow ESC to Return. Zmodyfikuj legendę wprowadzając treść „Zbiornik1”.
Analogicznie stwórz obiekty Screen Jump dla ekranu Zbiornik 2 i Zbiornik 3, przyporządkowując im ekrany docelowe o numerach odpowiednio 4 i 5.

Krok 10: Wgranie programu do sterownika
Tak przygotowane ekrany operatorskie możesz wgrać do sterownika i przetestować ich działanie.
W pierwszej kolejności skontroluj, czy ekrany oraz dane wyświetlają się poprawnie. Przy okazji warto sprawdzić działanie nawigacji między ekranami – kolejno przetestuj działanie przycisków sterujących zaworami, elementów służących do wyświetlania oraz zadawania wartości analogicznych dla każdego zbiornika. Zaobserwuj działanie animowanych grafik.
W tym odcinku pokazaliśmy sporo nowych elementów służących do wizualizacji i zadawania wartości analogowych. Wiesz już, jak rozszerzać aplikacje wizualizacyjne o kolejne możliwości. Wizualizacja instalacji jest gotowa, ale to nie wszystko, co powinna zawierać kompletna aplikacja. W następnym odcinku dowiesz się, jak konfigurować i wykorzystywać obiekt Menu w sterownikach Horner.
Następny odcinek: Jak korzystać z obiektu menu?
Autor artykułu:
Jacek Dynak
Praktykant ASTOR
Student IV roku kierunku „automatyka i robotyka” na Politechnice Krakowskiej