'Inteligenty' dom ze sterownikiem PLC

 Language:
Szukanie zaawansowane  

Aktualności:

Powrót do strony głównej: www.edom-plc.pl

Autor Wątek: Otwarty system automatyki domowej openHAB  (Przeczytany 13328 razy)

zim

  • Jr. Member
  • **
  • Wiadomości: 54
    • Zobacz profil
Odp: Otwarty system automatyki domowej openHAB
« Odpowiedź #15 dnia: Grudzień 04, 2015, 07:58:12 pm »

Marek,

Jeszcze jedno pytanie udało Ci sie przejąć kontrole nad roletami poprzez openhab ?
Zapisane

marek

  • Newbie
  • *
  • Wiadomości: 5
    • Zobacz profil
Odp: Otwarty system automatyki domowej openHAB
« Odpowiedź #16 dnia: Grudzień 08, 2015, 02:47:39 pm »

Jeszcze nie posiadam rolet :)
Z tego co pamiętam rollershutter nie ma zaimplementowanej obsługi modbus'a, więc trzeba stworzyć przełączniki obsługujące poszczególne funkcje poszczególnych rolet i potem w rules zdefiniować ich obsługę.
Zapisane

zim

  • Jr. Member
  • **
  • Wiadomości: 54
    • Zobacz profil
Odp: Otwarty system automatyki domowej openHAB
« Odpowiedź #17 dnia: Grudzień 08, 2015, 06:57:18 pm »

Ok czyli jednak ta droga, ktoś na forum openhab chwalił się że napisał obsługę ale nie odpisuje na PM
Zapisane

primary1

  • Newbie
  • *
  • Wiadomości: 6
    • Zobacz profil
Odp: Otwarty system automatyki domowej openHAB
« Odpowiedź #18 dnia: Grudzień 14, 2015, 11:08:56 am »

U siebie do rolet używam typu Number i Selection item. Stan rolety wybieram z listy od 0 do 100% co 10%.
Wcześniej używałem Rollershutter. W starych kopiach znalazłem obsługę po Modbus:

items:
Rollershutter Roleta_Parter_Salon_TylP "Tył prawa [%d %%]" (Rolety, Rolety_Parter, Rolety_Salon, Rolety_SalonG)
Number Roleta_Parter_Salon_TylP_M {modbus="slave2:19"}

rules:
rule "Roleta_Parter_Salon_TylP zapis"
when
        System started
            or
Item Roleta_Parter_Salon_TylP received command
then
    var State = Roleta_Parter_Salon_TylP.state as DecimalType
    var Pos   = State.toBigDecimal.toBigInteger.intValue
        sendCommand(Roleta_Parter_Salon_TylP_M, Pos)
end
rule "Roleta_Parter_Salon_TylP odczyt"
when

Item Roleta_Parter_Salon_TylP_M changed
then
var State = Roleta_Parter_Salon_TylP_M.state as DecimalType
var Pos   = State.toBigDecimal.toBigInteger.intValue
Roleta_Parter_Salon_TylP.state = new PercentType(Pos)
end

Nie jestem pewny czy to działająca konfiguracja, ale można się na tym wzorować.
« Ostatnia zmiana: Grudzień 14, 2015, 11:10:57 am wysłana przez primary1 »
Zapisane

zim

  • Jr. Member
  • **
  • Wiadomości: 54
    • Zobacz profil
Odp: Otwarty system automatyki domowej openHAB
« Odpowiedź #19 dnia: Grudzień 14, 2015, 07:47:06 pm »

Witaj,

Dzięki za przykład niestety u mnie nie działa...

Możesz podesłać "aktualny" sposób ?
Zapisane

primary1

  • Newbie
  • *
  • Wiadomości: 6
    • Zobacz profil
Odp: Otwarty system automatyki domowej openHAB
« Odpowiedź #20 dnia: Grudzień 15, 2015, 01:21:50 pm »

Będę miał chwilę to podeślę jeszcze przykład ze sterowaniem przez "markery" odpowiadające akcjom góra, dół i stop.
Zapisane

oktawian

  • Newbie
  • *
  • Wiadomości: 1
    • Zobacz profil
Odp: Otwarty system automatyki domowej openHAB
« Odpowiedź #21 dnia: Grudzień 17, 2015, 05:07:48 pm »

Witam,
Rasperry łączy się z integrą
01:32:36.276 INFO  o.o.c.s.AbstractActiveService[:169] - Satel Refresh Service has been started
01:32:36.287 INFO  o.o.b.s.i.protocol.Ethm1Module[:65] - Connecting to ETHM-1 module at 192.168.10.201:7094
01:32:36.305 INFO  o.o.b.s.i.protocol.Ethm1Module[:70] - ETHM-1 module connected successfuly

ale nie przekazuje żadnych rozkazów, mam włączoną integrację na ethm. Czy mógłby ktoś podesłać mi swoje pliki konfiguracyjne ? items, rules, sitemap, script, próbuję ogarnąć temat ale nie działa.

Podstawy jakie mnie interesują to:
podnoszenie, opuszczanie rolet, (pojedyńczo i grupowo)
sterowanie wyjściami (garaż itp.)
uzbrajanie alarmu
kasowanie alarmów

Dodatkowo chcę to ogarnąć na tablet z androidem, coś ala
https://github.com/smar000/openhab-dashboard/blob/master/tmp/image.jpg

Oczywiście dogadamy się $
Zapisane

hexal

  • Newbie
  • *
  • Wiadomości: 9
    • Zobacz profil
Odp: Otwarty system automatyki domowej openHAB
« Odpowiedź #22 dnia: Październik 23, 2016, 04:50:51 pm »

Wyjściami steruje poprzez NOVRAM (12288... 24575, %MW0... %MW12287) oraz Fb_LatchingRelay sprawdzając bit w pamięci do którego może pisać openhab poprzez modbusa oraz wejścia fizyczne i na podstawie tego ustawiam wyjście oraz drugą zmienną w pamięci którą openhab czyta.

Jakoś nie miałem "mądrzejszego" pomysłu.
Mógłbym:
VAR
   LIGHT1: Fb_LatchingRelay;
        VIS_LIGHT1 AT %MX0.0 : BOOL;
   VIS_LIGHT2 AT %MX0.1 : BOOL;
END_VAR

LIGHT1(xSwitch:=IN1 OR VIS_LIGHT1); OUT1:=LIGHT1.xActuator; VIS_LIGHT2:=OUT1; VIS_LIGHT1:=FALSE;

Witam,
ja analogicznie steruję światłem przez Fb_LatchingRelay i żeby nie przerabiać zbytnio kodu na PLC uzupełniłem jedynie deklarację zmiennych o %MX tj. np. VIS_K01  AT %MX0.8: BOOL; VIS_K02  AT %MX0.9: BOOL;VIS_K19  AT %MX1.10: BOOL; itd. - wtedy wiem gdzie szukać ich przy komunikacji przez modbus w openhab.
W samym openhab mam:
cfg
modbus:tcp.slave2.connection=x.x.x.x:502
modbus:tcp.slave2.type=coil
modbus:tcp.slave2.id=1
modbus:tcp.slave2.start=12288
modbus:tcp.slave2.length=100
.item
Switch cewka_VIS_K19 "PLC_PRG.VIS_K19" (ALL) {autoupdate="false",modbus="slave2:26"}
.sitemap
Switch item=cewka_VIS_K19 label="VIS_K19_kominek" mappings=[ON="ON"]
.rule
rule "Automatically switch off switch"
when
   Item cewka_VIS_K19 received command ON
then
    createTimer(now.plusSeconds(1))[|
      cewka_VIS_K19.sendCommand(OFF)
   ]
end

Wtedy po wciśnięciu lampy (VIS_K19_kominek) na ON zmienna %MX1.10 przyjmuje wartość 1 a po jednej sekundzie dzięki zapisom w .rules automatycznie przyjmuje wartość 0. Nie trzeba angażować dodatkowych zmiennych i działa :)

Teraz walczę żeby z danych wyciągniętych z plc_visu.xml odszyfrować adresy zmiennych innych niż stany 0/1 tj. zapisane w PLC zmienne przechowujące czas, datę zdarzeń i statystyki załączeń światła bo jakoś tego nie widzę.
Zapisane

tomekcz

  • Newbie
  • *
  • Wiadomości: 7
    • Zobacz profil
Odp: Otwarty system automatyki domowej openHAB
« Odpowiedź #23 dnia: Kwiecień 28, 2019, 03:04:21 pm »

Witam serdecznie.
Mam problem z sterowaniem przez openhab. To znaczy tak - zdeklarowałem zmienne globalne w codesy ,dodałem adres TEST %MW3.11:BOOL
Po skompilowaniu projektu i załadowaniu go do sterownika wciskając switch w openhab widzę w zmiennych globalnych zmianę z FALSE na TRUE i odwrotnie ale nie może to wysterować Fb_LatchingRelay. W samym bloku również mam na xSwitch IN27 OR TEST. Gdy wciskam przycisk podłączony do wejścia IN27 również widzę to w Openhab.

Proszę podpowiedzcie mi co żle robie?
Zapisane