Przekaźnik programowalny easyE4 (część 2). Konfiguracja i funkcjonalność
W poprzedniej części omówiono ideę budowy licznika osób oraz pokrótce opisano sterownik easyE4. Nadszedł czas, aby zdobytą wiedzę przełożyć na wykonanie aplikacji oraz jej uruchomienie. Zakładam, że czytelnik pobrał już i zainstalował środowisko programistyczne easySoft 7 i chociaż spróbował je uruchomić oraz troszkę „poklikać”. W tym tekście nie będziemy skupiali się na opisie opcji dostępnych w menu, ale od razu przejdziemy do wykonania licznika jedynie podając garść użytecznych porad. W razie wątpliwości warto zajrzeć na strony internetowe producenta sterownika lub skorzystać z portalu YouTube, gdzie znajdziemy wiele użytecznych instruktaży udostępnionych przez wielu autorów.
Do realizacji aplikacji licznika wybrano język FBD jako ten, w którym chyba najłatwiej pojąć logikę funkcjonowania programu oraz powiązania pomiędzy poszczególnymi modułami. Zrozumienie tej metody wymaga od programisty znajomości elementów cyfrowych (funkcji logicznych), takich jak bramki, rejestry i przerzutniki. Oprócz nich na liście modułów znajdziemy ich znacznie więcej, jednak te są troszkę takimi „czarnymi skrzynkami” i dosyć je opisać, aby zrozumieć sposób działania.
Język FBD dostępny w środowisku easyE4 jest inny niż ten, z którym spotkamy się w produktach konkurencyjnych, na przykład Siemens Logo! lub Mitsubishi Alpha. Wymaga trochę bardziej przemyślanego tworzenia programu, ponieważ program jest tworzony przez powiązane ze sobą, pojedyncze sieci wymieniające dane za pomocą referencji lub znaczników. Wprowadzanie modyfikacji w takim programie jest z jednej strony łatwe, ponieważ sieci są raczej nieduże, ale z drugiej strony trudne, bo wyprowadzenie na zewnątrz (poza sieć) jakiegoś sygnału wymaga dodania znacznika i jego odczytu w innej sieci. U konkurencji wystarczy po prostu poprowadzić linię, a schemat FBD przypomina schemat ideowy. Ale tak to już jest, że każde środowisko programistyczne ma swoje wady i zalety. Praktyka pozwala polubić zalety i przyzwyczaić się do wad.
Mając to na uwadze, rozpocznijmy tworzenie programu licznika. W tekście zaproponowano podzielenie pracy na kilka etapów, które pozwolą na dodawanie kolejnych elementów i stopniowe obserwowanie wyników pracy.
Po pierwsze, pokazano, jak wyświetlać komunikaty na ekranie wbudowanym w easyE4 oraz korzystać z przycisków zamontowanych na panelu czołowym. Przy tej podano sposób wyświetlania tekstów stałych oraz zmiennych, w tym stanu wejść, wyjść, zawartość liczników itp. Po drugie, wytłumaczono sposób obsługi przycisków kursora zamontowanych na sterowniku oraz podano przykładową metodę wprowadzania nastaw licznika i ograniczenia ich wartości. Przy tej okazji opisano moduły licznika, komparatora, bramki oraz styki i cewki (wejścia i wyjścia). Po trzecie, opisano logikę działania licznika oraz wykonano detektor kierunku ruchu. To najtrudniejsza część zadania, ponieważ należy przewidzieć różne sytuację, które mogą zdarzyć się w trakcie eksploatacji urządzenia. Niestety, korzystając z tak nieskomplikowanych czujników jak bariery świetlne nie sposób zabezpieczyć się przed wszystkim, co może zrobić użytkownik i nie można zagwarantować całkowicie bezbłędnego działania licznika.
Cały program można wykonać oraz sprawdzić za pomocą symulatora wbudowanego w środowisko programistyczne easySoft 7 bez konieczności posiadania przekaźnika programowalnego easyE4.
Połączenie easyE4 z easoSoft 7
Komputer, na którym wykonywano program miał w użyciu dwa interfejsy sieciowe: bezprzewodowy Wi-Fi, za pomocą którego łączył się z siecią domową oraz Ethernet, którym posłużono się do programowania przekaźnika easyE4. Dla uniknięcia problemów z połączeniem adresy IP v4 interfejsu przewodowego Ethernet wprowadzono ręcznie:
- Dla komputera PC było to adres 10.10.0.5.
- Dla przekaźnika easyE4 był to 10.10.0.2.
- Wspólna 8-bitowa maska podsieci 255.0.0.0 (/8) oraz bramka 10.10.0.1.
Oczywiście, połączenie z komputerem PC było wykonane za pomocą kabla Ethernet połączonego z gniazda do gniazda „na wprost” i w sieci nie było bramki, ale system Windows w najnowszej wersji nie pozwala na wprowadzenie tylko adresu i maski.
Menu nastaw easyE4 jest dostępne w trybie zatrzymania (stop) po naciśnięciu OK. Opcje wybiera się za pomocą przycisków kursora w górę/w dół, zatwierdza OK, a porzuca (rezygnuje lub wychodzi z bieżącego menu) za pomocą ESC.
Domyślnie easyE4 pracuje w trybie konfiguracji automatycznej. Aby wprowadzić ręcznie adres IP należy skorzystać z menu SYSTEM.OPT –> ETHERNET –> ADDRESS MODE i wybrać STATIC IP. Teraz można wprowadzić adres korzystając z menu o jeden poziom wyżej, to jest IP ADDRESS. W tym menu znajdziemy do wpisania ręcznego pozycje IP ADDRESS (przypomnijmy – 10.10.0.2), SUBNET MASK (CIDR Suffix: /8, tj. 255.0.0.0), GATEWAY ADDRESS (10.10.0.1). Parametr DNS SERVER możemy pominąć.
Gdyby system Windows „domagał się” adresu DNS, to należy wprowadzić taki sam, jak dla bramki, to jest 10.10.0.1. Nie ma to większego znaczenia, ponieważ w naszej aplikacji potrzebujemy Ethernetu jedynie do zaprogramowania przekaźnika i raczej nie będziemy z nim komunikować się z jakiejś rozległej sieci z serwerem dokonującym translacji nazwy na adres IP.
Łączymy komputer PC z przekaźnikiem easyE4 i uruchamiamy środowisko programistyczne easySoft 7. Po połączeniu możemy przekaźnik skonfigurować również za pomocą menu easySoft, jednak zostawmy to na kolejny etap nauki.
Utworzenie nowego projektu
Przy tworzeniu przykładowego programu posłużono się przekaźnikiem easyE4 w wersji z wyjściami tranzystorowymi. Środowisko programistyczne easySoft 7 po uruchomieniu po lewej stronie otwiera listę urządzeń podstawowych. Wybieramy z niej posiadany przez nas typ sterownika – w tym przykładzie jest to EASY-E4-DC-12TC1. Klikamy na jego nazwie i trzymając wciśnięty lewy przycisk myszy przenosimy go na prawą stronę, do obszaru „Projekt”. Ukaże się okno zatytułowane „Wstaw nowe urządzenie” (rysunek 1), w którym wykonujemy wybór wersji oprogramowania sprzętowego. W przykładowym easyE4 była to wersja V1.0. Tu jedna ważna uwaga. Przed wyborem wersji firmware należy dobrze zastanowić się, ponieważ późniejsza zmiana nie jest możliwa. Jeśli wykonamy program dla wersji nowszej, niż zainstalowana w przekaźniku, to nie da się on przesłać i uruchomić. Będziemy musieli albo zaktualizować firmware, albo przepisać program ręcznie.
Rysunek 1. Okno wyboru wersji firmware przekaźnika easyE4
Aby dowiedzieć się, którą wersję firmware ma nasz przekaźnik programowalny należy skorzystać z menu easyE4 INFORMATION –> SYSTEM. Zostanie wyświetlony ekran z podstawowymi informacji nt. naszego przekaźnika, między innymi typem oraz wersją firmware (OS). Parametry przekaźnika można również odczytać za pomocą easySoft 7, ale w tym celu trzeba odnaleźć sterownik w sieci oraz przejść do trybu pracy online, jednak teraz, dla uproszczenia użyjmy menu easyE4 i opisanego sposobu.
Po wybraniu modelu przekaźnika programowalnego oraz zatwierdzeniu wersji jego firmware grafika ilustrująca wybrany model zostanie wyświetlona w obszarze Projekt i możemy przystąpić do wykonania programu.
Tworzenie programu – obsługa ekranu, aktywowanie przycisków
W prawym dolnym rogu okna easySoft 7 są umieszczone 4 przyciski, które pozwalają na łatwy wybór trybu pracy. Chcąc edytować program wybieramy Programowanie, symulować jego pracę – Symulacja, przesłać go do przekaźnika – Komunikacja, wykonać zmiany w sieci przekaźników lub wprowadzić ich parametry – Projekt.
Aby utworzyć program klikamy na Programowanie. Przy pierwszym użyciu zostanie wyświetlone okno z pytaniem o wybór metody programowania. Wybieramy Schemat modułów funkcyjnych (FBD) i klikamy OK (rysunek 2). Przy kolejnym, środowisko programistyczne po prostu umożliwi nam edycję programu.
Rysunek 2. Okno wyboru metody programowania
Na początek wykonamy ekran informacyjny. Na liście modułów producenta po lewej stronie ekranu odnajdujemy Pozostałe moduły –> D – Znacznik tekstowy. Klikamy na jego ikonie i trzymając wciśnięty lewy przycisk myszy przenosimy go na biały obszar, który powinien być wyświetlany na górze ekranu i mieć numer „0001”. Jest to pierwszy nasz krok w tworzeniu programu w nowym środowisku, więc dla ułatwienia efekt pokazano na rysunku 3.
Rysunek 3. Moduł znacznika tekstowego umieszczony w obszarze sieci numer 0001
Moduł znacznika tekstowego służy do wyświetlania komunikatów dla użytkownika. Komunikaty mogą być stałe lub zmienne, zawierać etykiety, wartości, stałe symboliczne, pasek postępu itp. Na przykład, poziom logiczny wyjścia lub wejścia może być sygnalizowany jedynie za pomocą znaku kwadratu lub stałej symbolicznej (np. ZAŁĄCZONE/WYŁĄCZONE) zdefiniowanej przez programistę. Producent przekaźnika zadbał o to, aby były dostępne również polskie znaki, co sprawia, że komunikacja z użytkownikiem jest bardziej zrozumiała i świadczy o dbałości o szczegóły.
W programie możemy mieć potrzebę użycia wielu modułów znaczników tekstowych, więc są one włączane/wyłączane za pomocą wejścia EN. W tym przykładzie będziemy używali tylko jednego ekranu ze zmiennymi komunikatami, więc można moduł aktywować dołączając do wejścia EN stały poziom logiczny „1”. W tym celu na liście odnajdujemy Styki –> Stała 1 i przenosimy ikonę upuszczając ją na wejście EN modułu D01. Powinniśmy otrzymać efekt, jak na rysunku 4.
Rysunek 4. Dołączenie logicznej „1” do wejścia EN modułu znacznika tekstowego
Po kliknięciu na blok D01, już umieszczony w pierwszej sieci programu, w dolnej części ekranu zostaną wyświetlone parametry bloku. Używamy jedynie pojedynczego bloku komunikatu, więc na tym ekranie nie musimy ustawiać żadnych parametrów poza aktywowaniem przycisków „P”. Będziemy używali przycisków kursora (P1…P4) i DEL (P7), więc klikając myszą trzeba zaznaczyć umieszczone obok nich kwadraty. To jeszcze nie wystarczy do aktywowania przycisków, ale pozwoli na ich używanie, gdy jest aktywny dany, powiązany z nimi znacznik tekstowy. To bardzo przydatna funkcja bloku, ponieważ niekiedy użytkownik nie wiedząc co przycisnąć przypadkowo wywołuje jakieś opcje menu, a tu można mu pozwolić np. na używanie przycisków kursora i zabronić dostępu do reszty.
W tworzonym programie licznika przyciski będą miały następujące funkcje: w lewo/w prawo – zmniejszanie/zwiększanie dozwolonej liczby osób, w dół/w górę – zmniejszanie/zwiększanie aktualnego stanu licznika, DEL – zerowanie liczby zliczonych osób. Zerowanie będzie również możliwe za pomocą wejścia I08 przekaźnika, do którego w tym celu dołączymy przycisk. Jest to dla użytkownika znacznie wygodniejsze, niż wyszukiwanie drobnych przycisków na panelu przekaźnika, a ponadto zabezpiecza go przed przypadkowym uszkodzeniem.
W celu umieszczenia na ekranie komunikatów klikamy w przycisk Edytor znaczników tekstowych umieszczony w obszarze właściwości bloku znacznika tekstowego (na dole ekranu). Okno edytora z proponowanym wyglądem ekranu licznika pokazano na rysunku 5. Niektórych wartości jeszcze nie uda się nam umieścić, ponieważ dopiero zaczęliśmy tworzyć program i zmienne jeszcze nie istnieją, ale już możemy umieścić na ekranie komunikaty stałe.
Rysunek 5. Proponowany wygląd ekranu licznika podczas pracy
Dla umieszczenia na górze ekranu komunikatu „LICZNIK OSÓB 1.1” klikamy po prawej stronie wyświetlanego okna na Tekst statyczny i przenosimy na żądane miejsce na ekranie – tu do pierwszej linii wyświetlacza. Następnie, w dolnej części ekranu w polu Tekst wpisujemy „LICZNIK OSÓB 1.1”, a na wyświetlaczu klikamy na pole komunikatu i korzystając z markerów w rogach rozciągamy je tak, aby tekst zmieścił się na ekranie. W ten sam sposób, w kolejnych liniach umieszczamy pozostałe komunikaty, to jest poziomą linię złożoną ze znaków „-” oraz etykiety „AKTUALNIE:”, „DOZWOLONA:”, „WEJŚCIE:”. Na tym etapie kończymy klikając OK. Komunikaty zmiennej treści zdefiniujemy później.
Zerowanie licznika AKTUALNIE
Licznik bieżącej liczby osób w pomieszczeniu może być zerowany lub skorygowany za pomocą przycisków. Do zerowania będzie służył przycisk typu NO włączony pomiędzy +24 V DC a wejście I08 przekaźnika programowalnego lub przycisk DEL na jego panelu. Sieć generującą sygnał zerowania tworzymy w następujący sposób:
- Klikamy prawym przyciskiem myszy na biały polu sieci 0001 zawierającej definiowany przez nas komunikat. Z otwartego okna wybieramy Wstaw sieć po (Ctrl+T).
- Do pustej, nowo otwartej sieci przenosimy ikonę Styki –> Zwierny.
Styki to nic innego, jak wejścia sterownika. Styk zwierny, to wejście NO, rozwierny to wejście NC. Ze stałymi już się zapoznaliśmy (mamy do dyspozycji Stała 1 oraz Stała 0 odpowiadające poziomom logicznym wysokiemu/niskiemu). Styk analogowy w tym programie pozwoli nam na wprowadzenie wartości progów nastaw.
- Klikamy na umieszczony w sieci bloku. Na dole ekranu zostanie wyświetlone okno parametrów wejścia, w którym ustawiamy:
- Typ: Wejścia i wyjścia oraz znaczniki binarne.
- Komentarz: DEL.
- Typ logiki: Zwierny.
- Argument: P – Przycisk urządzenia.
- Numer: 7-DEL.
- Na wyjście bloku P07 przenosimy bramkę sumy OR. Znajdziemy ją w Bramka logiczna –> OR.
- Na wejście bramki przenosimy kolejny styk zwierny – będzie do wejście przekaźnika numer I08. Klikamy na ułożony blok i w sposób taki sam, jak dla poprzedniego styku ustawiamy następujące parametry:
- Typ: Wejścia i wyjścia oraz znaczniki binarne.
- Komentarz: Przycisk zewn.
- Typ logiki: Zwierny.
- Argument: Wejście.
- Numer: 8.
- Na wyjście bramki sumy przenosimy ikonę Cewki –> Zwykła cewka. Klikamy na ułożony blok i ustawiamy następujące parametry:
- Typ: Wyjścia binarne i znaczniki.
- Komentarz: RESET C02.
- Funkcja cewki: Zwykła cewka.
- Argument: M - Znacznik.
- Numer: 3.
Cewki to nic innego, jak wyjścia. Mogą to wyjścia fizyczne lub logiczne, połączone jedynie w obrębie programu. W tym programie użyjemy jednie: Zwykła cewka – wyjście binarne NO, Zwykła cewka zanegowana – wyjście binarne NC. Korzystając z funkcji programu utworzyliśmy wewnętrzny znacznik – wirtualne wyjście, które będzie mogło być dołączone w obrębie pozostałych bloków.
Na polu sieci można dodać opis, który w późniejszym czasie lub na etapie tworzenia programu, razem z komentarzami umieszczanymi przy nazwach cewek i znaczników, ułatwi nam analizowanie programu i przypomnienie sobie funkcji poszczególnych sygnałów. Opis najłatwiej dodać korzystając ze skrótu Ctrl+R. Dotychczasowy efekt naszej pracy powinien wyglądać tak, jak na rysunku 6.
Rysunek 6. Początek programu licznika – sieci numer 0001 i 0002
Wprowadzanie dozwolonej liczby osób
Licznik będzie dodawał do stanu aktualnego osoby wchodzące do danego pomieszczenia lub strefy i odejmował osoby wychodzące. Wartość zliczona będzie porównywana z ustawioną, dopuszczalną liczbą osób, a wynik porównania będzie sterował wyjściami Q1/Q2 dołączonymi do sygnalizatorów: Q1 – czerwonego, Q2 – zielonego (lub przekaźnika włączającego/wyłączającego ogrzewanie, wentylację, oświetlenie itp.).
Nastawa dopuszczalnej liczby osób będzie wprowadzana za pomocą przycisków „w lewo”/„w prawo”, więc najłatwiej posłużyć się licznikiem dwukierunkowym przechowującym wprowadzoną wartość. W ten sposób, przycisk „w lewo” mógłby powodować zmniejszenie, a „w prawo” zwiększenie stanu licznika o 1.
Możemy skorzystać z tej metody w naszym programie, ponieważ wśród modułów znajdziemy Moduły licznika –> C – Moduł licznika mający możliwość zliczania w górę i w dół. W tym celu wyposażono go w wejście zegarowe C_ oraz wejście kierunku zliczania D_. Są też inne funkcjonalności, których jednak nie potrzebujemy na etapie. W którejś z kolejnych sieci użyjemy jeszcze wejścia RE zerującego stan licznika – pozostałe teraz nam się nie przydadzą.
Dodajemy nową sieć za pomocą Ctrl+T. Jej tworzenie trzeba zacząć od bloku licznika, ponieważ to do jego wejść będziemy doprowadzali poszczególne sygnały. Na liście znajdujemy Moduły licznika –> C – Moduł licznika. Układamy go w obszarze sieci numer 0003. Klikamy w blok i w polu Komentarz wpisujemy DOZWOLONA. Ułatwi to nam identyfikację modułu w dalszym etapie tworzenia programu. Do wejścia impulsów zliczania _C dołączamy bramkę sumy OR, ponieważ impulsy zmniejszające/zwiększające wartość będą pochodziły z dwóch przycisków, a mamy pojedyncze wejście zegarowe. O tym czy dodajemy, czy odejmujemy decyduje poziom logiczny na wejściu kierunku.
Do wejść bramki OR należy doprowadzić przyciski powodujące zmniejszanie/zwiększanie stanu licznika. Pojemność licznika jest duża, ponieważ wynosi 2 bajty. Pozwala to na zliczanie w zakresie 0…65535. Dla tej aplikacji licznika przyjęto, że dopuszczalna liczba osób nie będzie większa niż 1000. W razie potrzeby to łatwo zmienić modyfikując stałą dostępną w programie. Ustawianie zakresu poniżej 0 też nie ma sensu – jest to po prostu bezużyteczne. Z drugiej strony, wartość poniżej 0 powoduje przepełnienie licznika i ustawienie maksimum. Dlatego logiczne wydaje się wprowadzenie w programie ograniczenia, dzięki któremu zakres nastaw będzie rozciągał się od 0 do maksimum, a program nie pozwoli na przekroczenie wartości progowych przez wprowadzającego nastawę.
W związku z tym, że mamy do czynienia z licznikiem, to do zablokowania wejść liczących można zastosować tzw. bramkowanie, dobrze znane osobom, które kiedykolwiek budowały miernik częstotliwości. Korzystając z bramkowania sygnał przepuszcza się przez bramkę logiczną – najczęściej AND, która jest przeźroczysta jedynie wtedy, gdy tzw. wejście bramkujące ma wysoki poziom logiczny.
W opisywanej sieci użyto dwóch bramek AND, z których jedna ma dwa wejścia bramkujące sygnał (CO1>0 i C01<STAŁA), a druga jedno (C01>0). Wyjście pierwszej bramkę AND dołączamy do jednego z wejść bramki OR. Jak łatwo zauważyć czegoś tu brakuje, ponieważ bramka ma 2 wejścia, a są potrzebne 3 (dwa sygnały bramkujące i przycisk). Aby dodać wejście klikamy w „+” na jej symbolu – każde klikniecie powoduje dodanie jednego wejścia, a w „-”usunięcie.
Do pierwszego wejścia bramki doprowadzimy przycisk powodujący zmniejszanie stanu licznika (w lewo). Na wejściu bramki AND układamy styk, klikamy w niego i ustawiamy następujące parametry:
- Typ: Wejścia i wyjścia oraz znaczniki binarne.
- Komentarz: W LEWO.
- Typ logiki: Zwierny.
- Argument: P – Przycisk urządzenia.
- Numer: 1 - <.
Do pozostałych, wolnych wejść bramki AND dodajemy dwa styki i ustawiamy ich parametry:
- Styk na wejściu 2 bramki AND:
- Typ: Wejścia i wyjścia oraz znaczniki binarne.
- Komentarz: C01<STAŁA.
- Typ logiki: Zwierny.
- Argument: M – Znacznik.
- Numer: 2.
- Styk na wejściu 3 bramki AND:
- Typ: Wejścia i wyjścia oraz znaczniki binarne.
- Komentarz: C01>0.
- Typ logiki: Zwierny.
- Argument: M – Znacznik.
- Numer: 1.
Do wyjścia przycisku dodajemy bramkę AND, którą będziemy blokować jego pracę, gdy wartość ustawiana będzie mniejsza od 0 lub większa od maksymalnej możliwej nastawy.
Następnie, dla bezpieczeństwa, układamy bramkę AND na wejściu D_ licznika C01 (DOZWOLONA). Zablokuje ona wejście zliczania dla kierunku w dół, jeśli zostanie osiągnięte 0. W zasadzie, to ta bramka nie jest potrzebna, ale dodano ją dla bezpieczeństwa aplikacji, aby wejście zmiany kierunku również było zablokowane pomimo naciskania klawisza „w lewo”. Do wejść bramki AND należy dołączyć dwa styki i w następujący sposób ustawić ich parametry:
- Styk na wejściu 1 bramki AND:
- Typ: Wejścia i wyjścia oraz znaczniki binarne.
- Komentarz: W LEWO.
- Typ logiki: Zwierny.
- Argument: P – Przycisk urządzenia.
- Numer: 1.
- Styk na wejściu 2 bramki AND:
- Typ: Wejścia i wyjścia oraz znaczniki binarne.
- Komentarz: C01>0.
- Typ logiki: Zwierny.
- Argument: M – Znacznik.
- Numer: 1.
Efekt naszej pracy powinien być taki, jak pokazano na rysunku 7. Teraz wykonamy sieć z komparatorem pilnującą wprowadzanie nastaw do licznika.
Rysunek 7. Sieć numer 0003 – licznik przechowujący nastawę dozwolonej liczby osób
Naciskając Ctrl+T dodajemy sieć numer 0004. Będzie ona pełniła funkcję porównania, czy zawartość licznika (nastawa) jest większa od 0. Jako pierwszy układamy blok komparatora, który możemy znaleźć na liście Moduły producenta –>Moduły arytmetyczny i analogowy –>CP – Komparator. Do jego wejść dołączamy dwa styki analogowe (Styki –> Styk analogowy) a do wyjścia GT dołączamy cewkę. Teraz, w znany już wcześniej sposób, klikając w styki i cewki ustawiamy ich parametry:
- Styk na wejściu 1 komparatora:
- Typ: Wyjścia modułu funkcyjnego.
- Komentarz: DOZWOLONA.
- Typ logiki: Zwierny.
- Argument: C – Moduł licznika.
- Numer: 1.
- Wyjścia modułu funkcyjnego: QV – Wyjście analogowe modułu funkcyjnego.
- Styk na wejściu 2 komparatora:
- Typ: Stała.
- Stała: 0.
Komparator ma 3 wyjścia: LT – aktywne, jeśli wartość I1 < I2, EQ – aktywne, jeśli wartość I1 = I2, GT – aktywne, jeśli wartość I1 > I2. W naszym zastosowaniu użyjemy wyjścia GT aktywnego, jeśli wartość na wejściu I1, a więc stan licznika C01 (DOZWOLONA) będzie większy od 0. Na wyjściu GT komparatora układamy cewkę i ustawiamy jej parametry w następujący sposób:
- Typ: Wyjścia binarne i znaczniki.
- Komentarz: C01>0.
- Funkcja cewki: Zwykła cewka.
- Argument: M – Znacznik.
- Numer: 1.
Analogicznie wykonujemy sieć, która sprawdzi, czy wprowadzana nastawa jest mniejsza od wartości maksymalnej. Dla uproszczenia możemy posłużyć się metodą kopiuj – wklej.
Naciskamy Ctrl+T tworząc sieć numer 0005. Przechodzimy do sieci 0004 i zaznaczamy komponenty sieci trzymając wciśnięty lewy przycisk myszy i rysując prostokątne okno. Następnie naciskamy Ctrl+C i przechodzimy do jeszcze pustej sieci 0005. Tu naciskamy Ctrl+V. Niestety, tym razem użyjemy wyjścia LT, więc musimy usunąć cewkę dołączoną do wyjścia GT, pobrać nową i dołączyć ją do wyjścia LT. Pozostało ustawienie wartości styków dołączony do wejść i cewki dołączonej do wyjścia.
Dzięki kopiuj – wklej styki powinny mieć poprawne parametry. Należy jedynie zmienić wartość stałej wprowadzając zamiast zera np. 1000. To maksymalna, dopuszczalna liczba osób, którą będzie można ustawić. Teraz trzeba zająć się cewką dołączoną do wyjścia LT komparatora nadając jej następujące parametry:
- Typ: Wyjścia binarne i znaczniki.
- Komentarz: C01<STAŁA.
- Funkcja cewki: Zwykła cewka.
- Argument: M – Znacznik.
- Numer: 2.
Efekt naszej pracy powinien wyglądać tak, jak na rysunku 8.
Rysunek 8. Sieci z komparatorami utrzymującymi nastawę w zakresie 0…maksimum
Wyjaśnienia wymaga sposób sterowania blokiem licznika C01 (DOZWOLONA). Zwiększanie stanu bloku licznika jest oczywiste – wystarczy doprowadzić impulsy na wejście C_. Zmniejszanie wymaga, aby dodatkowo podać logiczną 1 na wejście D_. W rozwiązaniach sprzętowych, np. realizowanych za pomocą licznika 74193, często wystarczająca była „sztuczka” polegająca na tym, że na wejście kierunku zliczania i impulsów zegarowych był doprowadzany ten sam impuls, ale na wejście kierunku zliczania wprost, a na wejście zegarowe nieco opóźniony np. za pomocą dwóch włączonych szeregowo bramek. Tego samego tricku użyto doprowadzając impulsy z przycisków do bloku licznika: impuls ze styku P01 jest podawany przez dwie bramki na wejście C_ i przez jedną na wejście D_. Okazało się, że programowa realizacja elementów logicznych też wprowadza niezbędne opóźnienie i skądinąd sprzętowy trick świetnie sprawdza się też na schemacie FBD.
Wytłumaczenie zasady działania licznika osób aktualnie przebywających w pomieszczeniu oraz sposoby detekcji kierunku ruchu są tematem kolejnego artykułu. Wydaje się, że już i tak wykonaliśmy sporo pracy, a jeszcze nie widać żadnego efektu. Dlatego proponujemy, utworzenie jeszcze jednej sieci, umieszczenie w niej jedynie niepodłączonego bloku licznika, ustawienie jego parametrów oraz powrót do ekranu informacyjnego, dokończenie pracy i przetestowanie działania aplikacji za pomocą przesłania programu do przekaźnika.
Dodajemy sieć numer 0006 (Ctrl+T). Z listy bloków pobieramy licznik (Moduły producenta –> Moduły licznika –> C – Moduł licznika) i ustawiamy jego parametry w następujący sposób:
- C: 2.
- Komentarz: AKTUALNIE (W POMIESZCZENIU)
- Nie jest wymagane EN do aktywacji modułu.
Teraz wracamy do sieci numer 0001, klikamy na blok znacznika tekstowego i w przycisk „Edytor znaczników tekstowych”. Do zapisanych wcześniej etykiet dodamy wyświetlanie aktualnej wartości obu liczników oraz stanu wyjścia Q1, do którego jest dołączone światło czerwone.
Z listy po lewej stronie okna edytora wybieramy Wskazanie wartości i przenosimy za dwukropek etykiety „AKTUALNIE:”. Zostanie pokazane pole zawierające liczbę 99999. Teraz na dole okna wybieramy zakładkę Zmienne wiążące i ustawiamy następujące wartości pól:
- Typ: Wejścia i wyjścia modułu funkcyjnego.
- Argument: C – Moduł licznika.
- Numer: 2 - >>AKTUALNIE (W POMIESZCZENIU)<<.
- Wejścia i wyjścia modułu funkcyjnego: QV – wyjście analogowe modułu funkcyjnego.
Identycznie postępujemy dla pola/etykiety „DOZWOLONA:”. Układamy za nią pole Wskazanie wartości, a następnie na zakładce Zmienne wiążące ustawiamy następujące parametry:
- Typ: Wejścia i wyjścia modułu funkcyjnego.
- Argument: C – Moduł licznika.
- Numer: 1 - >>DOZWOLONA<<.
- Wejścia i wyjścia modułu funkcyjnego: QV – wyjście analogowe modułu funkcyjnego.
Za etykietą „WEJŚCIE:” wyświetlimy napis TAK, jeśli jest dozwolone lub NIE, jeśli zabronione. Aby to wykonać z listy po lewej stronie wybieramy Tekst komunikatu i układamy za dwukropkiem etykiety. Rozciągamy pole do 3-4 znaków i ustawiamy jego wartości, jak na rysunku 9:
- Zakładka Tekst komunikatu:
- Typ: Bit.
- Wybór języka: Bez nazwy.
- Tryb wizualizacji: Standard.
- Tryb: dokładna wartość.
-
Typ zmiennych (tabela): wartość 0, tekst komunikatu TAK; wartość 1, tekst komunikatu NIE.
- Zakładka Zmienne wiążące:
- Typ: Wejścia i wyjścia oraz znaczniki binarne.
- Argument: Q – Wyjście.
- Numer: 1.
Rysunek 9. Konfiguracja pola Tekst komunikatu
Programowanie przekaźnika easyE4
Pozostała do ustawienia jedna opcja, której konieczność włączenia zostałaby zasygnalizowana na etapie kontroli programu, jednak dla oszczędzenia czasu zajmiemy się nią już teraz. W lewym dolnym rogu okna klikamy w przycisk Projekt i wybieramy zakładkę Ustawienia systemowe. Po prawej stronie, na dole odnajdujemy pole Przyciski P i zaznaczamy umieszczony obok kwadracik. W ten sposób załączyliśmy bit, który pozwala na użycie przycisków na panelu przekaźnika.
Teraz możemy zająć się sprawdzeniem poprawności wykonanego przez nas fragmentu programu. W tym celu, naciskając przycisk Programowanie w lewym dolnym rogu wracamy do edycji programu. Następnie naciskamy F10, co odpowiada wywołaniu funkcji kontroli wiarygodności programu. Powinien zostać wyświetlony komunikat zwierający co najwyżej ostrzeżenia, wolny od błędów. Taki program możemy przesłać do pamięci przekaźnika easyE4.
W tym celu, w lewym dolnym rogu ekranu klikamy w przycisk Komunikacja. Następnie, mając ustawione parametry protokołu IP v4 w sterowniku i w komputerze PC, klikamy w przycisk Znajdź. W wyświetlonym oknie, po prawej stronnej wybieramy interfejs Ethernet, do którego jest dołączony przekaźnik, a po lewej Nowe wyszukiwanie. Czekamy na rezultat operacji, który zostanie wyświetlony w tabeli. Klikamy w odnalezioną pozycję i w przycisk Zapisz jako profil IP. Powinien pojawić się komunikat o nowym profilu mającym adres/nazwę 10.10.0.2 oraz godzina i data jego utworzenia. Klikamy OK, aby zamknąć okno komunikatu i Zamknij, aby zamknąć okno wyszukiwania (rysunek 10). Po lewej stronie, na górze, w polu Profil IP, jeśli nie jest wyświetlony ten dopiero co przez nas utworzony, to wybieramy go z listy i klikamy w przycisk Tryb online – połączenie ze sterownikiem zostanie nawiązane.
Rysunek 10. Okno wyszukiwania przekaźnika w sieci Ethernet
Teraz klikając w listę Program/Konfiguracja, a następnie w PC => Urządzenie możemy wysłać program do przekaźnika. Na koniec, jeśli nie zostanie wyświetlony komunikat z pytaniem o uruchomienie programu, to klikamy w przycisk RUN i uruchamiamy wykonany przez nas program. Na tym etapie możemy przetestować jego pracę za pomocą przycisków kursora oraz DEL. Powinno również działać wejście zerujące I08.
Jacek Bogusz
j.bogusz@easy-soft.net.pl
Załącznik | Wielkość |
---|---|
licznik_osob.zip | 8.3 KB |
Dodaj nowy komentarz