Strona 2 z 9

Re: Wemos d1 mini skrzynka na listy

: pn kwie 13, 2020 8:10 pm
autor: L0L3K
klew pisze: pn kwie 13, 2020 8:03 pm
L0L3K pisze: pn kwie 13, 2020 4:32 pm
Nie wiesz czy gdzieś na forum jest opisany ten sposób na dwa kontraktony i soft do tego
Rozwiązanie z przekaźnikiem i dwoma kontaktronami/przełącznikami jest "sprzętowe" i da sygnał na dowolne wejście cyfrowe (najlepiej przez optoizolację).
Można też to zrobić softowo bez przekaźnika. Na nowej bibliotece wystarczy kilka linijek kodu, tylko musiałabym dorzucić "wirtualny sensor" którego stan zmienia się w programie.

Które rozwiązanie wolisz?
No właśnie raczej byłbym za rozwiązaniem softowym :geek:

Re: Wemos d1 mini skrzynka na listy

: pn kwie 13, 2020 8:20 pm
autor: alankedzior
klew pisze: pn kwie 13, 2020 8:03 pm
L0L3K pisze: pn kwie 13, 2020 4:32 pm
Nie wiesz czy gdzieś na forum jest opisany ten sposób na dwa kontraktony i soft do tego
Rozwiązanie z przekaźnikiem i dwoma kontaktronami/przełącznikami jest "sprzętowe" i da sygnał na dowolne wejście cyfrowe (najlepiej przez optoizolację).
Można też to zrobić softowo bez przekaźnika. Na nowej bibliotece wystarczy kilka linijek kodu, tylko musiałabym dorzucić "wirtualny sensor" którego stan zmienia się w programie.

Które rozwiązanie wolisz?
O jakiej optoizolacji mowa ? Możesz podać jakiś przykład ?

Re: Wemos d1 mini skrzynka na listy

: pn kwie 13, 2020 9:09 pm
autor: klew
L0L3K pisze: pn kwie 13, 2020 8:10 pm No właśnie raczej byłbym za rozwiązaniem softowym :geek:
Na https://github.com/klew/arduino wrzuciłem przed chwilą wirtualny sensor. Przykładowy kod na ESP8266:

Kod: Zaznacz cały

#include <SuplaDevice.h>
#include <supla/network/esp_wifi.h>

#include <supla/control/button.h>
#include <supla/sensor/virtual_binary.h>

const char* ssid     = "wifissid";
const char* password = "wifipassword";

Supla::ESPWifi wifiInterface;

void setup() {
  Serial.begin(460800);
  wifiInterface.setSsid(ssid);
  wifiInterface.setPassword(password);

  char GUID[SUPLA_GUID_SIZE] = {...};
  char AUTHKEY[SUPLA_AUTHKEY_SIZE] = {...};
  
  Supla::Sensor::VirtualBinary *sensor = new Supla::Sensor::VirtualBinary;

  Supla::Control::Button *buttonSet = new Supla::Control::Button(5, true, true);
  Supla::Control::Button *buttonClear = new Supla::Control::Button(6, true, true);

  buttonSet->willTrigger(*sensor, Supla::Control::Button::ON_PRESS, Supla::Sensor::VirtualBinary::SET);
  buttonClear->willTrigger(*sensor, Supla::Control::Button::ON_PRESS, Supla::Sensor::VirtualBinary::CLEAR);
  
  SuplaDevice.begin(GUID,                    // Global Unique Identifier 
                    "svrXX.supla.org",//      //"svr23.supla.org",  // SUPLA server address
                    "email@mail.com",
                    AUTHKEY);                // Authorization key
}

void loop() {
  SuplaDevice.iterate();
}
Przyciski na pinach 5 i 6 odpowiednio ustawiają lub czyszczą flagę w sensorze. Jest ustawiony tam pullup, więc wystarczy je zwierać do GND, aby było widać efekt.
Przyciskiem może być kontaktron, mikroprzełącznik, ...

Re: Wemos d1 mini skrzynka na listy

: pn kwie 13, 2020 9:35 pm
autor: klew
alankedzior pisze: pn kwie 13, 2020 8:20 pm O jakiej optoizolacji mowa ? Możesz podać jakiś przykład ?
Przy rozwiązaniu sprzętowym, zasilanie przekaźnika i wyjście sygnałowe są ze sobą połączone. Tam pracuje jakaś cewka, więc warto chronić układ przed jakimś niepowołanym skokiem napięcia.
Screenshot from 2020-04-13 23-32-28.png
Screenshot from 2020-04-13 23-32-28.png (20.14 KiB) Przejrzano 2899 razy
Nie znam się na "rodzajach" optoizolacji. Kupuję gotowce o odpowiednich napięciach po obu stronach.

Re: Wemos d1 mini skrzynka na listy

: pn kwie 13, 2020 10:03 pm
autor: pzygmunt
Na zasilaniu cewki przekaźnika powinna też być dioda.

Re: Wemos d1 mini skrzynka na listy

: wt kwie 14, 2020 9:41 am
autor: L0L3K
klew pisze: pn kwie 13, 2020 9:09 pm
L0L3K pisze: pn kwie 13, 2020 8:10 pm No właśnie raczej byłbym za rozwiązaniem softowym :geek:
Na https://github.com/klew/arduino wrzuciłem przed chwilą wirtualny sensor. Przykładowy kod na ESP8266:

Kod: Zaznacz cały

#include <SuplaDevice.h>
#include <supla/network/esp_wifi.h>

#include <supla/control/button.h>
#include <supla/sensor/virtual_binary.h>

const char* ssid     = "wifissid";
const char* password = "wifipassword";

Supla::ESPWifi wifiInterface;

void setup() {
  Serial.begin(460800);
  wifiInterface.setSsid(ssid);
  wifiInterface.setPassword(password);

  char GUID[SUPLA_GUID_SIZE] = {...};
  char AUTHKEY[SUPLA_AUTHKEY_SIZE] = {...};
  
  Supla::Sensor::VirtualBinary *sensor = new Supla::Sensor::VirtualBinary;

  Supla::Control::Button *buttonSet = new Supla::Control::Button(5, true, true);
  Supla::Control::Button *buttonClear = new Supla::Control::Button(6, true, true);

  buttonSet->willTrigger(*sensor, Supla::Control::Button::ON_PRESS, Supla::Sensor::VirtualBinary::SET);
  buttonClear->willTrigger(*sensor, Supla::Control::Button::ON_PRESS, Supla::Sensor::VirtualBinary::CLEAR);
  
  SuplaDevice.begin(GUID,                    // Global Unique Identifier 
                    "svrXX.supla.org",//      //"svr23.supla.org",  // SUPLA server address
                    "email@mail.com",
                    AUTHKEY);                // Authorization key
}

void loop() {
  SuplaDevice.iterate();
}
Przyciski na pinach 5 i 6 odpowiednio ustawiają lub czyszczą flagę w sensorze. Jest ustawiony tam pullup, więc wystarczy je zwierać do GND, aby było widać efekt.
Przyciskiem może być kontaktron, mikroprzełącznik, ...

Pod który port podłączyć Kontaktron? Jestem troche zielony w temacie, soft chcualbym wgrac przez flash tools

Re: Wemos d1 mini skrzynka na listy

: wt kwie 14, 2020 10:54 am
autor: klew
L0L3K pisze: wt kwie 14, 2020 9:41 am Pod który port podłączyć Kontaktron? Jestem troche zielony w temacie, soft chcualbym wgrac przez flash tools
Pierwszy parametr konstruktora dla tej klasy określa GPIO: Supla::Control::Button
W przykładowym kodzie to GPIO 5 i 6. Muszą być dwa kontaktrony/przyciski - załaczenie jednego (np. podniesieni klapki) ustawia flagę "jest poczta", a załącznie drugiego (np. otwarcie drzwiczek) czyści flagę.
GPIO możesz sobie dowolnie ustawić pod swoją płytkę (ten kod wymaga internal pullup, jak chcesz inaczej, to też się da, ale trzeba coś zmienić).

To jest program do Arduino IDE, więc musisz go sobie sam skompilować. Nie jest to trudne, ale jakieś podstawowy programowania by się przydały. Do samej kompilacji i wgrania przez Arduino IDE, nie potrzebujesz nic programować, tylko trzeba wszystko poinstalować. Jak już raz Tobie ruszy, to później będzie łatwiej ;)

Re: Wemos d1 mini skrzynka na listy

: wt kwie 14, 2020 4:59 pm
autor: L0L3K
klew pisze: wt kwie 14, 2020 10:54 am
L0L3K pisze: wt kwie 14, 2020 9:41 am Pod który port podłączyć Kontaktron? Jestem troche zielony w temacie, soft chcualbym wgrac przez flash tools
Pierwszy parametr konstruktora dla tej klasy określa GPIO: Supla::Control::Button
W przykładowym kodzie to GPIO 5 i 6. Muszą być dwa kontaktrony/przyciski - załaczenie jednego (np. podniesieni klapki) ustawia flagę "jest poczta", a załącznie drugiego (np. otwarcie drzwiczek) czyści flagę.
GPIO możesz sobie dowolnie ustawić pod swoją płytkę (ten kod wymaga internal pullup, jak chcesz inaczej, to też się da, ale trzeba coś zmienić).

To jest program do Arduino IDE, więc musisz go sobie sam skompilować. Nie jest to trudne, ale jakieś podstawowy programowania by się przydały. Do samej kompilacji i wgrania przez Arduino IDE, nie potrzebujesz nic programować, tylko trzeba wszystko poinstalować. Jak już raz Tobie ruszy, to później będzie łatwiej ;)

Jeszcze jedno ;) nie ma poprostu takiego softu w którym sam bym mógł resetować stan jest list? wtedy wystarczył by mi zwykły kontrakton jak do okien czy drzwi

Re: Wemos d1 mini skrzynka na listy

: wt kwie 14, 2020 6:31 pm
autor: klew
L0L3K pisze: wt kwie 14, 2020 4:59 pm Jeszcze jedno ;) nie ma poprostu takiego softu w którym sam bym mógł resetować stan jest list? wtedy wystarczył by mi zwykły kontrakton jak do okien czy drzwi
Tutaj możesz drugim przyciskiem resetować.
Kanał czujnika nie pozwala na zmianę jego stanu z poziomu aplikacji. Można to obejść używając np kanału przekaźnika

Re: Wemos d1 mini skrzynka na listy

: śr kwie 15, 2020 3:49 pm
autor: Xoggo
klew pisze: wt kwie 14, 2020 6:31 pm Kanał czujnika nie pozwala na zmianę jego stanu z poziomu aplikacji.
Znaczy, że wirtualnego sensora nie można aktywować lub dezaktywować wirtualnym przyciskiem?