W życiu każdego automatyka przychodzi moment, w którym brakuje nam niewielu dodatkowych wejść lub wyjść sterownika. Czasem niektóre elementy są bardzo oddalone od szafy sterowniczej. Z tego względu najlepiej, żeby rozwiązanie problemu było najtańsze, najprostsze i jednocześnie zajmowało jak najmniej miejsca. Chcąc uniknąć ciągnięcia wielu kabli sygnałowych pomiędzy sterownikami i elementami wykonawczymi, możemy wybrać wykonanie rozproszonego systemu sterowania. Przy pomocy jednego przewodu komunikacyjnego możemy mieć to w zasięgu ręki. W dalszej części artykułu postaram się przybliżyć jak połączyć ze sobą komunikacją dwa przekaźniki programowalne LOGO! 8.FS4.
Komunikacja między LOGO!8
Przekazywanie danych między przekaźnikami opierają się na zasadzie wymiany typu klient-serwer. Bazują one na wykorzystaniu protokołu MODBUS TCP/IP. W skład naszej konfiguracji sprzętowej wchodzą trzy urządzenia: komputer oraz dwa przekaźniki LOGO!8. Do połączenia wystarczy nam przewód Ethernetowy.
Konfiguracja serwera i klienta po protokole MODBUS
Krok 1. Dodanie sterowników do projektu.
W oknie „Network Project” klikamy w opcję „Add New device”.
Wybieramy typ LOGO!, w naszym przypadku jest to LOGO 8!FS4 oraz nadajemy mu adres IP. W moim przypadku jest to „192.168.0.3”.
Następnie ponawiamy kroki tworząc drugie urządzenie z innym adresem IP. Wybrałem „192.168.0.4”.
No dobrze, mamy dwa przekaźniki LOGO!, ale przewód Ethernetowy jest tylko jeden. Jeśli posiadamy switch, załatwiamy problem dodając dwa kolejne przewody Ethernetowe. My będziemy wgrywać programy po kolei: najpierw na jeden przekaźnik, potem na drugi. Ostatecznie połączymy je ze sobą, żeby sprawdzić prawidłowość wykonania.
Krok 2. Stworzenie połączenia
Przeciągamy linię ze złącza sieciowego przekaźnika 192.168.0.3 do przekaźnika 192.168.0.4 tworząc połączenie serwer – klient. Następnie klikamy dwukrotnie w połączenie.
Nasze okno powinno wyglądać następująco. Przekaźnik z adresem IP 192.168.0.3 jest klientem, a przekaźnik z adresem IP 192.168.0.4 jest serwerem.
Wyjaśnienie pozycji:
VB – virtual byte – odpowiada za cały bajt pamięci, wyodrębniony jako pamięć wirtualna.
QB – output byte- bajt wyjściowy.
QB – output byte- bajt wyjściowy
IB – input byte – bajt wejściowy.
Wybierzmy opcję VB, zacznijmy od adresu 1 oraz ustawmy długość na 1 bajt, czyli 8 bitów zostanie przesłanych od klienta do serwera. Zaczynając od V1.0, a kończąc na V1.7. Następnie strzałką ustawiamy które urządzenie będzie wysyłać informacje, a które je odbierać. W celu przejrzystości możemy ustawić te same wartości na serwerze, jednak gdybyśmy mieli więcej niż jeden przekaźnik LOGO! to serwer dla kolejnych przekaźników powinien zmieniać adresy początkowe na inne.
Ostateczny wygląd po wybraniu opcji:
Krok 3. Stworzenie prostego programu.
Zróbmy program, w którym przyciskiem jednego przekaźnika sterujemy wyjście drugiego przekaźnika.
1. Musimy pamiętać, w jakiej zakładce jesteśmy: programu odpowiadającego za klienta czy serwer, zaczniemy od klienta – czyli adres IP 192.168.0.3
2. Przeciągamy bloczek odpowiadający za wejście cyfrowe I1.
3. Łączymy wejście z wyjściem sieciowym, pamiętając, że wyjście sieciowe musi być ustawione jako V1.0 (w celu zmiany klikamy dwa razy na bloczek).
Gotowy program dla 192.168.0.3.
Następnie przechodzimy do zakładki serwera – 192.168.0.4
1. Pamiętamy o wybraniu odpowiedniej zakładki.
2. Przeciągamy tym razem wejście sieciowe (pamiętamy o V1.0), ponieważ serwer odbiera bajt sieciowy.
3. Łączymy z wyjściem cyfrowym, żeby zobaczyć prawidłowość działania.
Krok 4. Wgranie i sprawdzenie działania
1. Podpinamy PC do pierwszego przekaźnika. Załóżmy że jest to klient (192.168.0.3) i wgrywamy program.
2. Po wgraniu programu do klienta wgrywamy program na serwer (192.168.0.4), czyli musimy przełączyć się na drugi przekaźnik przewodem ethernetowym i wgrać program.
3. Łączymy oba sterowniki ze sobą i patrzymy, jak działa nasza pierwsza prosta konfiguracja.
Przypisanie innego adresu IP
No dobrze, a co jeśli nasz sterownik ma przypisany inny adres IP? Na przykład 192.168.0.53? Chcemy go wyszukać, nadać mu inny adres itp.
Musimy wejść w opcje właściwości.
Następnie w zakładkę „Online settings” -> wybrać opcję odświeżenia dostępnych urządzeń LOGO! -> wybranie dostępnego i połączenie się z nim przyciskiem „Connect” -> przejście do opcji „Assing IP address”.
Wpisanie odpowiedniego adresu IP i wgranie go poprzez opcję „Assign IP address”.
Praktyka czyni mistrza
Skoro już pierwsze połączenie mamy za sobą to zróbmy bardziej rozbudowany program.
Połączenie:
Założenia programu:
Jeśli wejście cyfrowe I3 oraz I4 przekaźnika klienta są załączone to na serwerze wyjście Q1, miga 2 sekundy z wypełnieniem 50%.
Jeśli wejście cyfrowe I8 serwera jest aktywne to niemożliwe, jest miganie serwera oraz wszystkie wyjścia klienta są załączone.
Poniżej zamieszczam rozwiązanie, więc jeśli ktoś chce się sprawdzić, to może porównać. Pamiętajmy, że nie potrzebujemy tych przekaźników fizycznie w celu przetestowania samych siebie, wszystko jest dostępne też dzięki symulacji i podzieleniu pól roboczych na dwa, a nawet i trzy obszary robocze.
Rozwiązanie:
Ważne kroki:
Przypisanie innych adresów IP (i wgranie na przekaźniki, jeśli mamy fizyczne).
Prawidłowe ustawienie odbioru i wysyłania danych w sieci.
Do migania potrzebujemy bloczek „Asynchronus Pulse Generator”.
Podzielenie ekranu na dwa obszary robocze i przeciągnięcie w puste pole oraz sprawdzenie prawidłowości w symulacji w przypadku braku przekaźników.
Podsumowanie
Mam nadzieję, że po tym artykule stworzenie konfiguracji sieciowej nie będzie dla nikogo problemem. Kilka kliknięć, jedno przeciągnięcie i mamy gotowe połączenie. Jeden przewód Ethernetowy i wszystko działa. Oczywiście, jeśli będziemy chcieli się pobawić w bardziej rozbudowane połączenia trzeba, będzie zainwestować w switche przemysłowe lub moduły rozszerzeń, ponieważ LOGO!8 posiada tylko jedno złącze Ethernet.
Kommentare