Używamy plików cookies (tzw. ciasteczka) by spersonalizować treść i ogłoszenia oraz by analizować ruch na stronie.  W sposób automatyczny dzielimy się informacjami o Twoim użyciu tego portalu z dostawcami ogłoszeń, którzy mogą połączyć te informacje z informacjami, które im udzieliłaś/łeś lub, które sami zebrali. Korzystanie z witryny bez zmiany ustawień dotyczących cookies oznacza, że będą one zamieszczane w Państwa urządzeniu końcowym.  Możecie Państwo dokonać w każdym czasie zmiany ustawień dotyczących cookies zmieniając opcje przeglądarki.

Aplikacja na Androida

W oparciu o jQuery, Phonegap i wtyczkę do jQuery napisałem prostą aplikację dla urządzeń z systemem Android.  Po wprowadzeniu kilku podstawowych informacji konfiguracyjnych umożliwia ona zmienianie wartości zmiennych oraz odczytywanie stanów wejść i wyjść.   Jej celem jest pokazanie, jak proste może być kontrolowanie PLC przez małą aplikację zbudowaną w oparciu o technologię open source.

 

Screen3 Screen2_2 Screen1

Przy pierwszym uruchomieniu zostaniecie poproszeni o zmodyfikowanie podstawowych danych dotyczących komunikacji ze sterownikiem:

  1. Adresu IP sterownika WAGO w postaci http://XXX.XXX.XXX.XXX/
  2. Nazwy i adresów do odczytywania i zapisywania danych na przyciskach.  Pole 'Description' nie jest wykorzystywane przez program i służy wyłącznie do opisywania pomagającego zachować porządek.
  3. Dla każdego 'pokoju' moża ustalić maksymalną liczbę kolumn.
  4. Przyciski Add Screen, Add Room, Add Button pozwalają dodawać elementy ekranu głównego.
  5. Przyciski Remove(...) usuwają elementy.
  6. Aby przełączyć się między ekranami (Screen'ami), należy wykonać ruch 'swipe' w prawo lub w lewo na ekranie głównym

Przed przystąpieniem do testów sprawdźcie, czy urządzenie, na którym uruchamiana jest aplikacja jest w tej samej sieci, co sterownik PLC.

Przyciski 'Tap Button' służyć mogą do sterowania oświetleniem.  Jako 'Name' podać należy nazwę do wyświetlania, np. 'Salon'.  Jako 'Read' wpisać należy adres wyjścia sterującego danym obwodem oświetlenia, np. 'QX0.0'.  W polu 'Write' wpisać należy adres zmiennej, wykorzystywanej do sterowania danym blokiem funkcyjnym, np 'MB0'.

Po stronie PLC, w definicji zmiennych (przykładowo):

VAR
	VARIABLE1 AT %MB0 : BOOL;
	LIGHT1 : Fb_LatchingRelay; (*z biblioteki Building_common.lib*)
END_VAR

Gdzie ‘MB0’ jest adresem, pod którym będziemy się komunikować z VARIABLE1.

W części programowej PLC_PRG umieszczam jeden blok funkcyjny do sterowania np. światłem:

LIGHT1(xSwitch:= IN1 OR VARIABLE1);
OUT1:=LIGHT1.xActuator;

Gdzie IN1 to wejście binarne (np. przycisk), a OUT1 wyjście binarne sterujące danym obwodem. OUT1 otrzymuje adres QX0.0 - do skonfigurowania w Resources/PLC Configuration.

Przycisk 'Read Temp' służy do odczytywania temperatury z wejść analogowych.  Pole 'Write' jest nieaktywne.  W polu 'read' należy podać adres wejścia analogowego, np 'IW0'.

Przycisk 'Read Value' służy do odczytywania stanów dowolnego wejścia, wyjścia lub adresu.  Pole 'Write' jest nieaktywne.  W polu 'read' należy podać adres odczytywanego wejścia/wyjścia/zmiennej, np. "QX0.0", "IW0", "MB0".

Po zakończeniu konfiguracji (przycisk 'SAVE') aplikacja zacznie co 5 sekund odczytywać wszystkie adresy 'Read' i aktualizować stany/wartości przycisków/pól.  W przypadku 'Tab Button' zmieniany będzie kolor przycisku (zółty dla QX0.0=1, czarny dla QX0.0=0).  W przypadku pola 'Read Temp', odczytana wartość z adresów IW..., podzielona zostanie przez 10 i na końcu dodany będzie symbol jednostki.  W przypadku pola 'Read Value', wartośc odczytana z adresu 'Read' zostanie wyświetlona bez modyfikacji.

Jeśli macie pytania, uwagi, sugestie, piszcie na forum.

Link do Google Play