Start a new topic

Skomplikowany interfejs do Grentona na smartfon.

Może komuś nie odpowiada zbyt duża ilość informacji- mnie też. Dlatego interfejs ma zwracać uwagę na te ikonki, które są kolorowe. Ogólnie mam na nim wszelkie potrzebne ogólne informacje.

Przy braku napięcia w domu na ekranie pojawia się żółta tabliczka informacyjna. Podobnie przy zwarciu na 1-Wire.

Kolory i obrazki ikonek zmieniają się, np. po zachodzie słońca jest księżyc za chmurką. Kolor termometru zmienia się w zależności od temperatury zewnętrznej. Kolor okna w domku podobnie. Teraz to budowa, więc zimny niebieski. Strzałki obok termometru pokazują, czy temp. w ciągu ostatniej godziny wzrosła czy spadła. Wskaźnik temp. kominka ma zakres 40-100 stopni.

Może Was zainspiruje.


image


Kolejne ekrany interfejsu nie są aż tak przeładowane i wyglądają normalniej.


image



Jak ikonki zmieniają kolory? Załóżmy, że chcemy wyświetlać 3 różne kolory symbolu termometru. Tworzę 3 ikonki, każda w stanie niewidocznym i widocznym i nakładam je na siebie graficznie (te same współrzędne). W przypadkach, gdy np. za chmurką ma być słońce lub księżyc, należy zwrócić uwagę na kolejność dodawania ikonek do ekranu.


2 people like this

Chyba coś poszło nie tak i posta mi zjadło.

Krótko:

nakładam na siebie trzy ikonki. Mają one stany On i Off. To jak wiesz stany RadioButtona. Stan Off to przezroczysty png. W cechach użytkownika CLU dodaję trzy zmienne globalne sterujące 3 buttonami Radio (defaultowo zadaję im number i wartości 0. Piszę skrypt odpalany np. co minutę:


if(CLU->czujnik_temp_powietrze_salon->Value<20) then

CLU->w_domu_zimno = 1

CLU->w_domu_normalnie = 0

CLU->w_domu_goraco = 0

else

if(CLU->czujnik_temp_powietrze_salon->Value>=20) and (CLU->czujnik_temp_powietrze_salon->Value<23) then

CLU->w_domu_zimno = 0

CLU->w_domu_normalnie = 1

CLU->w_domu_goraco = 0

else

if(CLU->czujnik_temp_powietrze_salon->Value>=23) then

CLU->w_domu_zimno = 0

CLU->w_domu_normalnie = 0

CLU->w_domu_goraco = 1

else

end

end

end


i jako źródło butonów podaję stan zmiennych globalnych.

Nakładam butony na siebie zadając te same współrzędne.



1 person likes this

Tworzenie ikonki wielostanowej.


Zacznę od najprostszego przykładu wskaźnika temperatury: zimno, normalnie, ciepło.

Zaczynam od stworzenia 3 różnych ikon termometrów, które w stanie off są przezroczyste.

Poniżej 3 ikonki on i ostatnia z prawej off (jest, ale jej nie widać w poście):


image  image  image  image


W OM klikam dwukrotnie na CLU i w cechach użytkownika dodaję 3 numeryczne zmienne globalne np. w_domu_zimno, w_domu_normalnie oraz w_domu_goraco. Defaultowo przypisuję im wartości zerowe.


Na stronę interfejsu dodaję RadioButton i jako źródło podaję CLU->w_domu_zimno, a  jako ikonkę- wiadomo. Zapisuję współrzędne ikonki i znowu dodaję RadioButtona tym razem dla w_domu_normalnie i potem analogicznie kolejnego, podając te same współrzędne dla wszystkich ikonek. Ustawiając je ręcznie ciężko będzie, bo są niewidoczne ze względu na stan OFF.

W efekcie nakładam na siebie 3 butony i jak tylko jeden jest w stanie ON to reszta jest przezroczysta, bo w stanie OFF. :-)

Ot i cała tajemnica.


Teraz tylko skrypt odpalany np. co minutę, ładujący do CLU odpowiednie wartości zależnie od czujnika temperatury:


if(CLU->czujnik_temp_powietrze_w_domu->Value<20) thenCLU->w_domu_zimno = 1

CLU->w_domu_normalnie = 0

CLU->w_domu_goraco = 0 else

if(CLU->czujnik_temp_powietrze_salon->Value>=20) and (CLU->czujnik_temp_powietrze_salon->Value<23) thenCLU->w_domu_zimno = 0

CLU->w_domu_normalnie = 1

CLU->w_domu_goraco = 0 else

if(CLU->czujnik_temp_powietrze_salon->Value>=23) thenCLU->w_domu_zimno = 0

CLU->w_domu_normalnie = 0

CLU->w_domu_goraco = 1 else

end

end

end


Potem zapis do CLU i wysłanie pliku interfejsu. DONE!


Należy pamiętać o tym, że każda modyfikacja w OM powinna przed pracą być skopiowana.

Zwracam uwagę na to, ponieważ moje opisy dotyczą grzebania w OM i robisz to na własną odpowiedzialność!


Witam,


mam małe pytanie, chciałbym żeby na moim smartfonie była wyświetlana aktualna temperatura danego pomieszczenia. Jaki pownienem użyć skrypt aby temperatura się pojawiła. Mam w pokojach grenton touch panele 4 i 8 dotykowe.


z góry dziękuje i pozdrawiam

Paweł

Witaj! 

Albo ja jestem tępy, albo mój OM... 

Na stronę interfejsu dodaję RadioButton i jako źródło podaję CLU->w_domu_zimno, a  jako ikonkę- wiadomo.

 Ale ze jak dodajesz temu własną ikone?! Pokaż screena bo nie kumam jak to zrobić. Mam własny interfejs, własną stronę, dodaje przycisk Radio, dodaje tam źródło, potem w parametrach mam skórkę ale moge tylko domyślne wybrać.... 


Z góry dziekuję. 

Do wyświetlenia temperatury z panelu na smartfonie nie potrzeba skryptu. 


Temperaturę można wyświetlić wybierając w Visual Builderze obiekt "Tekst", a jako źródło tego obiektu trzeba wstawić cechę "value" bezpośrednio z czujnika temperatury z dowolnego panelu i to wszystko.

Czasem korzystam z funkcji "furtka" w siłowniku Nice, ale o ile pamiętam, jest ona wyłącznie dostępna pilotem.

Można przeprogramować sterownik, ale z tego co zrozumiałem z instrukcji musi wtedy być włączone autozamykanie po czasie lub po naruszeniu, bo przycisk CLOSE zmienia się wtedy na otwieranie częściowe.

Możesz rozebrać pilota, dolutować kabelki i podpiąć do Relay. :-)

Inne, chyba najprostsze rozwiązanie to otwarcie i po pewnym czasie w Grentonie stop. Wtedy 6 kabelków do jednego Relay, bo jeszcze close. No niby masa wspólna, ale 3 wyjścia Relay na bramę... A jak podlutujesz pilota do częściowego otwarcia to cały Relay na 1 bramę.

A może pogrzebać w radiu i znaleźć impuls częściowego otwarcia? I tak celem wyświetlania stanu bramy trzeba woltomierzem przebadać, pod które kabelki podpiąć Zenera.

Dodam, że temperatura dodana jako tekst będzie wyświetlać wartość z dwoma miejscami po przecinku.

Jeśli nam zależy na wyświetlaniu wartości całkowitej to musi być skrypt, albo "ściśnięcie" ramki w VB, aby setne były niewidoczne :-).

Ja stosuję skrypt:


W VB klikasz dwukrotnie w CLU.

W zakładce cechy użytkownika dodajesz cechę o nazwie np. temp_1 typu number.

Uruchamiasz poniższy skrypt:


local temp_1=CLU->czujnik_temp_1->Value

local zaokr_temp_1 = math.ceil(temp_1)

CLU->temp_1_zaokr = zaokr_temp_1


gdzie:

czujnik_temp_1 to dany czujnik temperatury,

local temp_1 to zmienna lokalna widziana tylko w skrypcie,

zaokr_temp_1 to druga zmienna lokalna, która się wpisze do globalnej,

temp_1_zaokr to zmienna globalna widziana wszędzie gdzie zechcesz i wyświetlisz ją w obiekcie TEXT, ale już jako liczbę całkowią zaokrągloną.


Przyznam ze wytestowalem OM, ale ni groma nie wiem jak Ty powstawiales tam te ikonki itp. Tam mozna chyba tylko domyslne wybrac? Ma ktos moze jakas instrukcje OM etc? Moze ja jakas nieaktualna wersje mam :P

Rzeczywiście super wykonanie i świetny pomysł (podobnie jak interfejsy dla dzieci). Muszę nad swoim popracować bo po obejrzeniu takiego projektu zwykłe przyciski poustawiane w równe rządki wydają się śmiesznie banalne.

A możesz przybliżyć jak technicznie robisz że te ikonki zmieniają kolory (rozumiem że to zmienia się wyświetlany obrazek) w zależności od zmiany stanu źródła?


Pozdrawiam Karol.

Moim zdaniem super pomysł i bardzo fajne wykonanie. Muszę usiąść nad swoimi interfejsami bo widzę, że da się tu dużo fajnego wymyślić. 
Dzięki za inspirację :)

Żeby wszystko było jasne: na razie Grenton w Object Manager oferuje nam smutne szare ikonki, które w niczym nie ograniczają funkcjonalności systemu, lecz niezbyt ładnie prezentują się na ekranie interfejsu w czasach, gdy przyzwyczajeni jesteśmy do pięknych ekranów z chmurkami i kolorowymi ikonkami, a tablet do obsługi systemu zamierzamy oprawić w drogie ramki i powiesić na ścianie w salonie.

Ja i zapewne wielu użytkowników poradziło sobie z tym problemem poprzez stworzenie własnych ikon. Proces ten wymaga posiadania zaawansowanego programu graficznego, który pozwoli na stworzenie plików graficznych o określonych rozmiarach i przezroczystości dla danego interfejsu, oraz wymaga edycji plików xml. Dlatego nie podejmuję się szkolenia jak to zrobić, bo można w programie OM tak sobie nabruździć, że już nie odpali prawidłowo i ktoś będzie miał pretensje, że musi zaczynać od nowa.

Jeśli komuś miałbym pomóc w stworzeniu niepowtarzalnego interfejsu to musiałbym się z nim spotkać i posiedzieć cały dzień, a może dłużej. Tak jak z podrasowaniem silnika w aucie- można, ale nie w swoim garażu.

Moimi postami pokazuję jedynie co można wykrzesać z Grentona- a można jak widać wiele. :-) Firma się rozwija, tylko wciąż mi nie odpowiadają na pytanie, kiedy nowy HM na iphone,a... :-(

Zapracowani...


a chmurka (na, jak rozumiem, inne warianty aktualnej pogody) jak się zmienia?

Szkoda, że na swojej stronie prezentują kolorowe ikonki, których w rzeczywistości nie ma w bazie.

Moje zdziwienie było dość duże, jak support oznajmił mi, że kolorowe to trzeba zrobić samemu.


PS: Ale wątek bardzo przydatny. I mam nadzieję, że będzie prężnie kontynuowany :)

Witam ponownie,


drogi Benku pracuję sobie powoli nad swoim interfejsem (niestety powoli :-( ) akurat ostatnio popsuła mi się brama wjazdowa (padł jeden siłowik) i podjąłem decyzję żeby zamiast naprawiać obecne rozwiązanie przejść na coś co współgra z Grentonem. Widziałem na Twoim interfejsie że masz ikony które ... hmm cos robią z bramami (Brama południe, Brama wschód). Czy możesz opisać jakie inteakcie podejmujesz z bramą (sterowanie, monitorowanie stanu)?


pozdrawiam Karol.

Login or Signup to post a comment