A gdybys w cludzie ustawil relaya jako przekaźnik bramowy? Tam mozesz ustawic wlasnie takie krotkie czasy zalaczenia przekaźnika.miost wrote: Fri Jan 06, 2023 8:43 am W jaki sposób można wyzwolić krótkie zwarcie przekaźnika po naciśnięciu przycisku w aplikacji. Chcę użyć tego jako zdalny reset do zwarcia pinów RST-GND w płytce NODEMCU
Dużo przeglądałem ale nie znalazłem oczywistego i prostego rozwiązania. A na pewno takie istnieje. Byłoby to bardziej eleganckie niż ręczne przełączanie przekaźnika w aplikacji w pozycjach ON/OFF.
Przekaźniki/Relay w SuplaDevice Arduino IDE
-
petione
- Posts: 121
- Joined: Sat Jul 21, 2018 4:26 pm
-
Duch__
- Posts: 2199
- Joined: Wed Aug 24, 2016 7:26 pm
- Location: Opole
- Been thanked: 6 times
Koledzy, mam problem.
Mam zmienną wyjście_X która może przyjmować stany 0 i 1 i odpowiada fizycznemu stanowi wyjścia przekaźnikowego urządzenia niesuplowego ale też sieciowego. Urządzenie to odpytuje przez komendę "odpytaj od stan wyjścia" gdzie przypisuje właśnie wartość zmiennej wyjście_X.
Komendami włącz_wyjście_X lub wyłącz_wyjście_X mogę sterować tym przekaźnikiem na zasadzie włącz/wyłącz.
I teraz jest główny problem.
Jak pogodzić sterowanie tym przekaźnikiem, z poziomu aplikacji dedykowanej, oraz z poziomu Supli? Chcę dojść do sytuacji że gdy przekaźnik jest włączony przez aplikację dedykowaną, to stan w aplikacji zmienia mi się na ON, jeśli jest wyłączony to na OFF, ale też żebym mógł zmienić stan tego przekaźnika z poziomu aplikacji SUPLA. Ma ktoś jakiś pomysł?
Mam zmienną wyjście_X która może przyjmować stany 0 i 1 i odpowiada fizycznemu stanowi wyjścia przekaźnikowego urządzenia niesuplowego ale też sieciowego. Urządzenie to odpytuje przez komendę "odpytaj od stan wyjścia" gdzie przypisuje właśnie wartość zmiennej wyjście_X.
Komendami włącz_wyjście_X lub wyłącz_wyjście_X mogę sterować tym przekaźnikiem na zasadzie włącz/wyłącz.
I teraz jest główny problem.
Jak pogodzić sterowanie tym przekaźnikiem, z poziomu aplikacji dedykowanej, oraz z poziomu Supli? Chcę dojść do sytuacji że gdy przekaźnik jest włączony przez aplikację dedykowaną, to stan w aplikacji zmienia mi się na ON, jeśli jest wyłączony to na OFF, ale też żebym mógł zmienić stan tego przekaźnika z poziomu aplikacji SUPLA. Ma ktoś jakiś pomysł?
-
klew
- Posts: 13905
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 134 times
- Been thanked: 137 times
Tam masz jedno urządzenie wykonawcze z softem Supli oraz tym drugim? Czy mówimy o dwóch osobnych urządzeniach?Duch__ wrote: Mon Oct 09, 2023 3:04 am Koledzy, mam problem.
Mam zmienną wyjście_X która może przyjmować stany 0 i 1 i odpowiada fizycznemu stanowi wyjścia przekaźnikowego urządzenia niesuplowego ale też sieciowego. Urządzenie to odpytuje przez komendę "odpytaj od stan wyjścia" gdzie przypisuje właśnie wartość zmiennej wyjście_X.
Komendami włącz_wyjście_X lub wyłącz_wyjście_X mogę sterować tym przekaźnikiem na zasadzie włącz/wyłącz.
I teraz jest główny problem.
Jak pogodzić sterowanie tym przekaźnikiem, z poziomu aplikacji dedykowanej, oraz z poziomu Supli? Chcę dojść do sytuacji że gdy przekaźnik jest włączony przez aplikację dedykowaną, to stan w aplikacji zmienia mi się na ON, jeśli jest wyłączony to na OFF, ale też żebym mógł zmienić stan tego przekaźnika z poziomu aplikacji SUPLA. Ma ktoś jakiś pomysł?
Jeśli to jest jedno urządzenie, to przykładowo można to zrobić tak:
1. Dodajesz przekaźnik jako VirtualRelay
2. W miejscy gdzie wydajesz komendę "odpytaj stan wejścia", dodatkowo dodajesz sprawdzanie stanu VirtualRelay.
VirtualRelay ma takie metody:
Code: Select all
void turnOn(_supla_int_t duration = 0) override;
void turnOff(_supla_int_t duration = 0) override;
bool isOn() override;
Ogólnie powinieneś:
1. Zmienić stan VirtualRelay, gdy zmienia się stan z tej drugiej integracji
2. Zmienić stan przekaźnika/zmiennej, gdy VR zmienia swój stan na inny.
Najlepsze suple dla Twojego domu 
-
vajera
- Posts: 7285
- Joined: Wed Oct 31, 2018 7:58 am
- Location: Biedrusko
- Has thanked: 288 times
- Been thanked: 161 times
Nie ma, dorabiałem to u siebie na potrzebę bramki Zigbee.zzrr wrote: Sun Apr 27, 2025 2:39 pm Czy VirtualRelay posiada działającą metodę setDefaulStateRestore() ?
Zapis do storage jest a z powyższym nie mogę sobie poradzić?
setDefaultStateOn i Off działa. Ale one nie potrzebują Storage.
Bramka Zigbee <=> SUPLA
Więcej informacji tutaj:
https://forum.supla.org/viewforum.php?f=127
FAQ https://forum.supla.org/viewtopic.php?t=17277
Więcej informacji tutaj:
https://forum.supla.org/viewforum.php?f=127
FAQ https://forum.supla.org/viewtopic.php?t=17277
Hmm... A jak to zrobiłeś?
Ja w międzyczasie zrobiłem sobie w kodzie zapisy do EEPROM i przy starcie w Setup sprawdzam zapis i włączam lub wyłączam w zależności od zapisanej wartości.
Masz na to lepszy pomysł może?
-
vajera
- Posts: 7285
- Joined: Wed Oct 31, 2018 7:58 am
- Location: Biedrusko
- Has thanked: 288 times
- Been thanked: 161 times
https://github.com/lsroka76/Z2S_Library ... switch.cppzzrr wrote: Sun Apr 27, 2025 3:37 pmHmm... A jak to zrobiłeś?
Ja w międzyczasie zrobiłem sobie w kodzie zapisy do EEPROM i przy starcie w Setup sprawdzam zapis i włączam lub wyłączam w zależności od zapisanej wartości.
Masz na to lepszy pomysł może?
metody onInit, onSaveState, onLoadState.
Bramka Zigbee <=> SUPLA
Więcej informacji tutaj:
https://forum.supla.org/viewforum.php?f=127
FAQ https://forum.supla.org/viewtopic.php?t=17277
Więcej informacji tutaj:
https://forum.supla.org/viewforum.php?f=127
FAQ https://forum.supla.org/viewtopic.php?t=17277
https://github.com/lsroka76/Z2S_Library ... switch.cpp
metody onInit, onSaveState, onLoadState.
[/quote]
Dzięki. To materiał na coś poważniejszego. W moim przypadku jedno zdarzenie w całym działaniu to zostanę przy EEPROM.
Dziedziczenie po klasie to sobie zostawię na coś innego. Nie mniej materiał wartościowy. Dzięki wielkie
No chyba że mnie coś podkusi
-
vajera
- Posts: 7285
- Joined: Wed Oct 31, 2018 7:58 am
- Location: Biedrusko
- Has thanked: 288 times
- Been thanked: 161 times
Dzięki. To materiał na coś poważniejszego. W moim przypadku jedno zdarzenie w całym działaniu to zostanę przy EEPROM.zzrr wrote: Sun Apr 27, 2025 3:52 pmhttps://github.com/lsroka76/Z2S_Library ... switch.cpp
metody onInit, onSaveState, onLoadState.
Dziedziczenie po klasie to sobie zostawię na coś innego. Nie mniej materiał wartościowy. Dzięki wielkie
No chyba że mnie coś podkusi
[/quote]
To wygląda poważnie tylko na pierwszy rzut oka
Rozwiązania, które zastosował @klew w SuplaDevice to przykład bardzo dobrze zaprojektowanego systemu, który łatwo rozbudowywać o nowe funkcje.
Bramka Zigbee <=> SUPLA
Więcej informacji tutaj:
https://forum.supla.org/viewforum.php?f=127
FAQ https://forum.supla.org/viewtopic.php?t=17277
Więcej informacji tutaj:
https://forum.supla.org/viewforum.php?f=127
FAQ https://forum.supla.org/viewtopic.php?t=17277
