Wstęp
Serwer aplikacji mobilnych rozszerza system o możliwość korzystania z urządzeń mobilnych takich jak tablety czy telefony.
Ponieważ nie mówmy o aplikacjach typowych dla systemów Android czy iOS a aplikacjach działających w przeglądarkach
to możemy np. skorzystać z mikro komputerków tworząc np. wizualizacje dla TV czy panele z wykorzystaniem ekranów dotykowych.
Są trzy rodzaje aplikacji:
- Panele operatorskie skalowane dla tabletów lub ekranów dotykowych do obsługi systemów
- Wizualizacje dla telewizorów
- Kokpity menadżerskie dla tabletów, telefonów czy laptopów
Serwer aplikacji może też zostać użyty do integracji z innymi systemami. Obce systemy mogą „udawać” aplikację
korzystając z możliwości wymiany informacji w formacie JSON i pobierać z systemu dane „real time” oraz sterować systemem.
Rola aplikacji mobilnych
System Golem powstał jako zbiór aplikacji dla systemu windows. W poprzedniej wersji nawet programy wizualizacji dla TV były aplikacjami windowsowymi.
Aplikacje tworzy to swego rodzaju podział: urządzenia z przeglądarkami przejąć mogą obsługa systemu przez operatorów,
np. za pomocą tabletów przypisanych maszynom, wizualizacja dla dużych monitorów ( TV ) szybki dostęp do podstawowych danych operacyjnych nie wymaga dostępu do programu klienckiego.
Z kolei program kliencki jest dedykowany dla działań analitycznych, raportowania, tworzenia kartotek produktów i zleceń.
Zmiana aplikacji
Od wersji 10.29.xx zmieniono aplikacje mobilne wraz z nazwami plików HTML
Po aktualizacji w ramach której zmieniono zawartość katalogu ROOT należy zmienić nazwy plików w urządzeniach klienckich
i dokonać przeglądu ich ustawień.
Nowe nazwy plików oraz nazwy i opisy nowych aplikacji dostępne są na stronie startowej mes.html
Uruchomienie aplikacji
aby uruchomić aplikację wpisujemy adres ip komputera stacji w okienku adresowym przeglądarki, np.:
http://192.168.1.100/mesapp/pop.html
albo sam adres IP: http://192.168.1.100
wtedy uruchomiony zostanie plik index.html z katalogu ROOT w którym znajduje się lista aplikacji
Zamiast adresu IP możemy podać nazwę komputera:
http://neuron/mesapp/pop.html
albo adres localhost jeśli uruchamiamy aplikację na tym samym komputerze
Wszystkie te przykłady są prawidłowe dla domyślnego portu 80.
Jeśli zmienimy port na inny (
co koniecznie należy zrobić ), np. na 6255 to musimy go dodać do adresu url.
Będzie to odpowiednio:
http://192.168.1.100:6255/ mesapp/pop.html
http://192.168.1.100:6255
http://neuron:6255/mesapp/pop.html
localhost:6255
Wpisanie samego adresu serwera, np.
http://192.168.1.100
spowoduje wywołanie pliku mes.html w którym jest lista dostępnych aplikacji.
Dostępne aplikacje
Wizualizacje dla TV
Aplikacja dla telewizorów ( tv.html ) pozwala na wyświetlenie ośmiu różnych ekranów w 3 motywach ( biały, czarny, HUD)
Celem jest wizualizacja stanu maszyn na dużych ekranach, np. telewizorach danych o różnym stopniu uszczegółowienia.
Są ekrany gdzie zmieniane są cyklicznie ekrany ze szczegółami przeznaczone do powieszenia np. w biurze szefa produkcji jak i ekrany andon z małą ilością szczegółów ale dobrą widocznością w przypadku gdy ekran ( telewizor ) ma być widoczny z „końca hali”
panele operatorskie
Podstawową aplikacją do sterowania systemem jest panel operatorski (app_pop1.html) dostosowany do uruchomienia na tablecie. Aplikacja dostosowuje się do trzech szerokości ekranu: do 600px, do 1200px i powyżej 1200px co odpowiada
( w uproszczeniu ) małemu tabletowi w pionie i w poziomie i dużemu tabletowi w poziomie.
Panel może być skonfigurowany dla jednej maszyny lub pozwala na wybór maszyn z grupy ( zobacz ustawienia aplikacji ).
Kolejną aplikacją panelu operatora jest panel przewidziany dla komputera PC: app_pop_pc.html
Podstawową aplikacją do sterowania systemem jest panel operatorski (app_pop1.html) dostosowany do uruchomienia na tablecie. Aplikacja dostosowuje się do trzech szerokości ekranu: do 600px, do 1200px i powyżej 1200px co odpowiada
( w uproszczeniu ) małemu tabletowi w pionie i w poziomie i dużemu tabletowi w poziomie.
Panel może być skonfigurowany dla jednej maszyny lub pozwala na wybór maszyn z grupy ( zobacz ustawienia aplikacji ).
Kolejną aplikacją panelu operatora jest panel przewidziany dla komputera PC: app_pop_pc.html
Kokpity menadżerskie
Kokpity pozwalają na podgląd stanu maszyn i zleceń oraz ich powiadomień z ustawionej grupy.
Dostępne są trzy aplikacje kokpitów:
phone.html – dostosowana wymiarami do telefonu
mc.html – dostosowana do tabletów w dwu wymiarach
mchd.html – dostosowana do ekranów fullHD
Aplikacja "Hour production board"
Aplikacja Hour production board ( tvhpb.html ) jest odpowiednikiem popularnego narzędzia Lean o tej samej nazwie które to najczęściej stanowi tablicę sucho ścieralną na której pracownicy zapisują ilości wyprodukowane w poszczególnych godzinach zmiany roboczej.
Oczywiście system samodzielnie liczy produkt oraz wyznacza cel na podstawie aktualnego optymalnego czasu cyklu.
Poza licznikami pokazującymi godzinowy cel, produkt braki i procentową realizację aplikacja pokazuje rozkład statusu w danej godzinie oraz, w prawym panelu stan aktualny: status, zlecenie, operatora itp.
Aplikacja implementuje też dwa wykresy reprezentującą cel i ilość wykonaną z krokiem 6 minut. Dostępne są dwa rodzaje wykresów.
Pierwszy to klasyczny wykres słupkowy pokazujący ile sztuk zrealizowano w ciągu kolejnych 6 minut:
Drugi wykres to tzw. wykres wypalenia znany z aplikacji zarządzającymi realizacją projektów. Zielona linia rośnie o aktualny cel ( bez względu na stan produkcji i status ), druga linia pokazuje rzeczywiste wykonanie:
W idealnych warunkach linie powinny się pokrywać. Jeśli zmieni się cel ( krotność lub czas cyklu ) rysowana jest pionowa linia a nachylenie linii celu się zmienia proporcjonalnie do zmian celu.
Uwaga. Aplikacja ma kilka ograniczeń:
- dane są tworzone w pamięci stacji więc tablica jest zerowana w przypadku jej restartu.
- nadzorca musi mieć określony optymalny czas cyklu ( OCC, Tt, lub zapisaną stałą wydajność ).
- wymagany jest układ 3 zmian
Logowanie
Choć możliwe jest logowanie normalnym hasłem to dla wygody w korzystaniu z aplikacji na urządzeniach mobilnych logowanie odbywa się za pomocą klawiatury numerycznej i kodu PIN. Jeśli podamy pin 0 to zostaniemy poproszeni o normalne hasło. Pin ustalamy w ustawieniach użytkownika.
Po wykonaniu operacji użytkownik zostanie wylogowany po czasie ustawionym parametrem „czas logout” (domyślnie 25 sec) a każda wykonana w tym czasie operacja resetuje ten czas.
Czas do końca ważności hasła widoczny jest na pasku narzędziowym wraz z aktualnie zalogowanym operatorem.
Przyciskiem na tym pasku możemy wylogować operatora albo zalogować się na dłuższy czas określony parametrem „czas logout slow”
Ustawienia aplikacji
Aplikacja wymaga pewnych ustawień takich jak numer grupy czy numer maszyny, sposób odświeżania danych etc.
Okno ustawień otwieramy przyciskiem z prawej strony paska statusu. Nie każda aplikacja korzysta ze wszystkich ustawień. Niektóre nie są potrzebne, inne mają je ustawione na stałe w kodzie aplikacji. Ustawienia zapisywane są w pamięci przeglądarki.
ważne
Ustawienia przypisane są do domeny, czyli adresu aplikacji. Jeśli uruchomimy tę samą aplikację stosując dwu różnych zapisów, np.:
http://192.168.1.100:6255/mesapp/app_pop1.html
http://serwer:6255/mesapp/app_pop1.html
to dla przeglądarki to są DWIE RÓŻNE aplikacje.
Parametry
Motyw - Wszystkie aplikacje dostępne są w trzech motywach: jasny, ciemny i HUD. Motyw HUD to motyw podobny do motywu ciemnego ale ma też drobne elementy animacji – np. animowane wykresy podczas zmiany maszyny.
Nadzorca zamiast grupy - określa czy aplikacja obsługuje grupę maszyn czy jedną maszynę, np. panel operatora pop może być skonfigurowany tak że operacje są dla jednej maszyny albo dla wybranej przez operatora maszyny z listy reprezentującej grupę.
W niektórych aplikacjach, np. w TV tryb grupa/SV przypisany jest do wybranego ekranu.
numer grupy - określa numer grupy dla trybu z obsługą grupy. Numer grupy odczytujemy z listy grup w programie konstruktor. Przydatne może być to że grupy powyżej nr. 50 nie są widoczne w programie klienckim, możemy więc stworzyć grupę 51 tylko dla określonej aplikacji mobilnej.
numer nadzorcy - wskazuje maszynę która ma być użyta przez aplikację jeśli ta działa w trybie obsługi jednej maszyny
Ekran - W aplikacji TV określa jaki ekran ma być aktywny – aplikacja zawiera 8 różnych ekranów
Czas odczytu - Określa czas ( w sekundach ) co ile aplikacja odpytuje serwer o dane. W przypadku aplikacji gdzie widoki maszyn zmieniane są sekwencyjnie czas ten określa tempo zmian ekranów.
blokuj po utracie połączenia – szczegóły niżej
podstawa OEE – jeśli aplikacja wyświetla OEE a jego podstawa nie jest wybierana przez użytkownika to określamy dla jakiej podstawy ma być wskaźnik wyświetlany: bieżącej zmiany, bieżącego miesiąca, bieżącego zlecenia czy w trybie auto: jak jest zlecenie to zlecenie, jak nie ma zlecenia to zmiana
alarm Audio – dla aplikacji korzystających z wyskakującego okienka sygnalizującego zmiany statusu i wezwania andon można załączyć sygnalizację dźwiękową. Podczas przywołania andon lub przywołania andon i zmianie statusu na awarię odtwarzany jest pięciokrotnie plik mp3
czas logout ( i logout2) – czas podtrzymania zalogowanego operatora
tłumacz – opcja pojawia się gdy załączone są wersje językowe dla serwera – zobacz dokument odnośnie wersji językowych
Odczyt danych z serwera
Aplikacja pobiera dane z serwera. Poza załadowaniem wszystkich plików aplikacja pobiera cyklicznie dane o stanie maszyn ( może też pobierać na żądanie, np. wizualizacja dla telefonu ma przycisk „Refresh” do ręcznego odczytu)
Domyślne odświeżanie danych odbywa się co 4 sekundy co możemy zmienić w ustawieniach.
Należy zoptymalizować czas odczytu tak aby był on jak najdłuższy przy zachowaniu czytelności zmian danych.
Pamiętajmy że podczas testów spodziewamy się natychmiastowej reakcji na zmiany w systemie ale w praktyce 10 sekund wydaje się być optymalne.
Ważne jest to co się stanie gdy z serwera odpowiedzi nie dostaniemy.
Brak połączenia aplikacja melduje komunikatem i zmianą status baru na czerwony. Pomimo błędu aplikacja nadal próbuje wysłać żądanie do serwera.
Najpierw generuje 4 zapytania z odstępem 3 sekund aby zniwelować krótkie zakłócenia w sieci.
Jeśli nie odzyska połączenia to sygnalizuje to czerwonym kolorem statusbaru i zmniejsza częstotliwość zapytań do
30 sekund.
Od kolejnego ustawienia zależy czy aplikacja będzie usiłowała połączyć się w nieskończoność czy po kolejnych 10 błędach zostanie trwale zablokowana z koniecznością jej ręcznego odblokowania.
Blokowanie należy wyłączyć w przypadku aplikacji wyświetlanych na telewizorach na halach abyśmy nie musieli
po każdej przerwie w pracy serwera dobierać się do ich komputerów czy przeglądarek.
Dźwięk w przeglądarce Chrome
Ostatnie aktualizacje przeglądarki wprowadziły zabezpieczenia przed audio reklamami. Powoduje to że aplikacja nie może odtwarzać dźwięku do póki użytkownik nie wykona jakiejkolwiek interakcji – nie kliknie w cokolwiek, nie przewinie strony etc.
Powoduje to problem z odtwarzaniem alarmów w aplikacjach na telewizory.
Aby temu zaradzić musimy wejść w ustawienia -> zaawansowane -> ustawienia treści - > Dźwięk i w opcji „zezwalaj” przyciskiem „dodaj” dodajemy adres serwera taki jak w adresie aplikacji (można skopiować cały adres aplikacji – chrome samo wyodrębni domenę)
Od tej chwili dźwięki alarmów będą odtwarzane bez konieczności klikania czegokolwiek
Panel informacyjny
Klikając w logo [GolemMES] ( lub najeżdżając myszą na PC) odsłaniamy okienko informacyjne aplikacji. Panel zawiera:
- Wersja stacji zbierania danych systemu
- numer wersji serwer / framework – powinny być identyczne ( wyświetlane również w prawym dolnym rogu okna). Jeśli się różnią najprawdopodobniej zaktualizowano plik stacji ale nei zaktualizowano zawartości katalogu ROOT
- Nazwę, wersję oraz krótki opis aplikacji
- Informacje o wersji jezykowej
- Informacje o wymiarach strefy roboczej przeglądarki
- Przycisk LOCK blokujący transmisję z serwerem
- Przycisk Reload powodujący ponowny odczyt strony
- Przycisk Full screen powodujący przejście do trybu pełnoekranowego
- Przycisk Server przywołujący informację o stanie serwera
Konfiguracja serwera
Serwer dostarczający dane dla aplikacji mobilnych jest integralną częścią stacji zbierania danych.
Bez klucza licencyjnego dla aplikacji mobilnych serwer pracuje w trybie demo.
Konfiguracja serwera ogranicza się w zasadzie do ustawienia portu – domyślnie jest to port 80 ale
zalecane jest wybranie innego portu gdyż może się tak zdarzyć że na porcie 80 „odezwie się” inny serwer zakłócając pracę systemu.
Istnieje też możliwość zmiany lokalizacji katalogu ROOT, np. w przypadku modyfikowania aplikacji, aby przypadkowo nie „pokryć” swoich zmian podczas aktualizacji stacji.