ESP12F + MCP23017 +...
 
Powiadomienia
Wyczyść wszystko

ESP12F + MCP23017 + RPi z OpenHab -> czy to dobra koncepcja?  

  RSS
sindap
(@sindap)
Młodzik

Hej. Taką mam koncepcję i chętnie przeczytam waszych opinii.

Przetestowałem ESP12F i wymyśliłem sobie, że do sterowania odbiorników w domu wykorzystam go w taki sposób.

Oczywiście układów będzie więcej. Sprawdziłem, że jako wejścia/wyjścia GPIO pewnie się zachowują porty 9, 10, 12, 13, 14 i 16. Jest jeszcze 4 i 5 ale muszę je zostawić dla I2C.

Teraz tak.

Skoro MCP231017 nie sprawdza się z ESP jako wejście (brak możliwości ustawienia GPIO jako przycisk bistabilny) w takim razie jego GPIO będę wykorzystywał tylko i wyłącznie jako wyjścia.

Natomiast 6 wejść ESP tylko jako wejścia.

W sumie w tym wypadku mógłbym wykorzystać MCP23008 ale mam 17-nastki.

Skoro wejść w ESP mam 6 to z układu MCP wykorzystam tylko 6 wyjść na przekaźniki by każdy ESP działał autonomicznie w razie padu sieci WiFi, czy Rpi.

No właśnie RPi bo pozostałe sprawy chce realizować z poziomu RPi i OpenHAB ewentualnie Domoticz.

W tym przypadku jeżeli będzie brak sieci WiFi. RPi padnie to teoretycznie poszczególne ESP powinny mi obsłużyć włączanie i wyłączanie zasilania do odbiorników na poziomie podstawowym. Przeważnie światło.

Co wy na to?

Dodam jeszcze, że okablowanie mam centralne więc od wyłączników mam poprowadzone skrętki a wszystkie odbiorniki schodzą się do szafy.

Cytuj
Dodane : 07/08/2020 9:21 pm
isom
 isom
(@isom)
Prezes Moderator Zasłużony dla Forum, Donator 2019, Donator 2K20

Cześć @sindap

Musisz sobie odpowiedzieć czy takie rozwiązanie ma sens przy tak okablowanej instalacji.

Dla mnie osobiście ma średni. Już samo stosowanie włączników bistabilnych  przy takim okablowaniu utrudnia, podraża i psuje estetykę.

Utrudnia, bo trzeba stosować różne włączniki do realizacji połączeń schodowych, większej ilości włączników na obwód ( krzyżowych).

Podraża, bo zwykły włącznik dzwonkowy jest znacznie tańszy niż np. krzyżowy.

Psuje estetykę, bo przy np. układzie schodowym klawisze są w różnym położeniu w zależności od stanu oświetlenia, przy dzwonkowych zawsze wszystkie są w tej samej pozycji i to  wygląda lepiej.

Widziałbym sens takiego rozwiązania gdybyś stosował moduły dopuszkowe, gdzie przy uszkodzeniu takiego modułu łatwo go pominąć przywracając funkcjonalność tego obwodu oświetlenia.

Kolejna sprawa to rozwiązanie sprzętowe, jeśli wszystko będzie w jednej szafie to, czemu nie zrobić połączeń między Maliną a modułami wykonawczymi przewodowo ( USB, RS485).

Zastosowanie np. arduino mega pozwala obsłużyć znacznie większą ilość obwodów oświetlenia minimalizując przy tym ilość urządzeń, które mogą ulec awarii.

Arduino działa wtedy autonomicznie i tylko przekazuje stany do serwera np. Domoticz, oraz wykonuje rozkazy wysłane przez ten serwer.

Jak padnie malina to oświetlenie działa nadal, jak padnie WIFI, a będzie działała sieć LAN do której będzie podłączona malina to system dalej jest w 100% funkcjonalny

OdpowiedzCytuj
Dodane : 08/08/2020 9:00 am
sindap
(@sindap)
Młodzik

@isom

Dziękuję Ci za twój wpis.

Małe sprostowanie. Napisałem, że GPIO w MCP23017 nie mogę ustawić jako bistabilne ale jeżeli chodzi o instalację i biały montaż to mam zamontowane dwuklawiszowe, czterostykowe beckery także jeden wyłącznik może mi przekazywać stany na 4 GPIO (wyłącznik jest monostabilny ale GPIO w ESP mogę ustawić jako bistabilny. Do wszystkiego będę używał te same przyciski. Chodzi o elastyczność konfiguracji.

Masz rację, w temacie arduino. Nie wykluczone, że go użyję. Sęk w tym, że ESP z tego co wiem nie ograniczy mi liczby GPIO. W przypadku MCP23017 + arduino z tego co wiem obsłuży mi jedynie 8 kości. Chyba, że masz przykład innego rozwiązania.

Pozdrawiam

OdpowiedzCytuj
Dodane : 09/08/2020 9:22 pm
isom
 isom
(@isom)
Prezes Moderator Zasłużony dla Forum, Donator 2019, Donator 2K20

@sindap arduino mega udostępnia 56 GPIO cyfrowych i 16 analog, Zakładając że w esp + MPC 23017 użyjesz 12, to samo arduino zastąpi 4 szt esp +mpc. Dodatkowo masz 16 analogowych wejść, na których możesz zrobić przyciski. Nie wiem ile tych GPIO docelowo potrzebujesz, ale przez aktywnego huba USB możesz takich arduino podłączyć kilka. Moim zdaniem to bardziej stabilne rozwiązanie niż mnożenie esp i MPC23017. Szybciej dojdzie do zwiechy espeasy, lub utraty połączenia z wifi niż coś się stanie z dobrze napisanym kodem wgranym do arduino.

Bardzo stabilnie działa np biblioteka Mysensors.

OdpowiedzCytuj
Dodane : 10/08/2020 8:21 pm
Ombre
(@ombre)
Młodzik

Witam,

moje doświadczenia z prawie identycznym rozwiązaniem są jak na razie nieprzyjemne.

Konfiguracja|: ESP8266 (na różnych płytkach) do tego MCP23017 lub PCF8574. Oprogramowanie najnowsze ESP Easy mega. Po Wifi z RPi z zainstalowanym Domoticz.

Instalacja elektryczna w domu również poprowadzona skrętkami od włączników dzwonkowych do szafy centralnej. Na razie przekaźniki bistabilne na start, żeby światło działało ale aspiracje są większe.

Najpierw testy samego ESP. Obsługuje tylko 12 wejść (takie ograniczenie ESP Easy). Do tego jak podłączone poprzez HTTP z Domoticz to przekaźniki wpadają w klikanie... ESP się wiesza i obsługa wielu przycisków w kilku pomieszczeniach jeżeli złoży się że kilka osób naciska jednocześnie budzi duże wątpliwości.

Testowałem komunikacje po MQTT ale jak na razie u mnie nie działa. Raz włącza przekaźnik z Domoticz a innym razem nie. Z przycisków dzwonkowych to już wcale...

Poważnie rozważam zastosowanie Arduino Mega. Tylko słabo czuje się z programowania i dlatego mam obawy, że sobie nie poradzę.

OdpowiedzCytuj
Dodane : 26/09/2020 10:05 am
Krzysztofch
(@krzysztofch)
Ekspert Donator 2K20 Zarejestrowany, Zasłużony dla Forum, Donator 2019

@ombre

chce sie dzis pobawic tymi ekspanderami. Potrzebuje to do listwy z 6 przekaznikami plus 6 wlacznikow.

Warto bawic sie tymi expanderami z espeasy

Sa jakies problemy? Raczej wolalbym z bistabilnymi.

Kupujac te expandery mialem nadzieje ze moge zbudowac z esp easy listwe z 18 przekaznikami a tu z tego co czytam max 12

OdpowiedzCytuj
Dodane : 26/09/2020 2:33 pm
isom
 isom
(@isom)
Prezes Moderator Zasłużony dla Forum, Donator 2019, Donator 2K20

@ombre Mając tak okablowaną instalację nie potrzebujesz ESP , możesz te expandery podłączyć bezpośrednio do maliny i zwiększyć ilość GPIO ( zakładam że malina ma być w tej centralnej szafie), możesz też tak jak piszesz użyć arduino i mysensors.

Przy arduino nawet tylko nano można obsłużyć do 8 obwodów oświetlenia i czyli 8 przycisków i 8 przekaźników . Zaleta takiego rozwiązania to autonomiczne działanie , w przypadku np awarii maliny i pamięć stanów na wypadek braku prądu.

Jak chcesz to zacznij nowy temat w dziale domoticz gdzie nie będzie się to mieszać z ESP i wtedy wrzucę Ci gotowy kod dla 4 przekaźników z przyciskami , który bardzo łatwo sam rozbudujesz . Po wgraniu do arduino dodasz w domoticz bramkę Mysensor USB , podłaczysz arduino do usb maliny i automatycznie będziesz miał wszystkie urządzenia na liście do dodania.

OdpowiedzCytuj
Dodane : 26/09/2020 6:20 pm
Ombre polubień
sindap
(@sindap)
Młodzik

Hej. Jeżeli chodzi o malinę + expandery MCP23017 to zwyczajnie jest to dla mnie za mało jeżeli chodzi o ilość wejść i wyjść. Takie miałem pierwsze założenie przed budową domu. Mało bo malina miała kompleksowo obsługiwać również podlewanie, obsługę bram. Miała być również rezerwa na inne cuda. Ilość jest ograniczona do 8 scalaków MCP.

Druga sprawa jest taka, że jak malina pada to pada wszystko. Owszem planowałem hardwerowy backup na zasadzie szybkiej przepinki identycznej maliny. Niby temat z głowy.

Teraz jestem w fazie testów ESP12F. 6 wejść GPIO ESP używam jako odczyt stanów wyłączników. Ustawione na wykrycie stanu niskiego. Tylko 6 bo tylko 6 według mnie w tym ESP zachowuje się stabilnie. Optymalnie byłoby 8. Dlaczego?

Dlatego, że obecnie te 6 wejść steruje 6 przekaźnikami przez 1 expander MCP23017. Takich ESP mam 4 i tylko cztery bo to testy. Gdyby ESP miał 8 to expander obsłużył by mi całą płytkę 8 przekaźników. Wtedy prosta sprawa. Jedna płytka przekaźników, jeden esp dla płytki z jednym expanderem. Oczywiście jest jeszcze ESP32 i sprawa się zmienia. To też biorę pod uwagę i jedna kość jest w drodze. Czekam na nią.

Konfigurację ESP robię tak, że w zasadzie jest ona identyczna we wszystkich układach. Wejścia danego ESP obsługują przekaźniki którego wejścia dotyczą. Chodzi o to, że przycisk dotyczy przekaźnika/światła danego pomieszczenia. Jak padnie określony ESP to leży określony obwód a nie losowo rozrzucone.

Z nieprzyjemnych zachowań na razie odkryłem dwa. Jeden układ z czterech jakie pracują tracił łączność WiFi. Ustawienia statyczne. Ten sam router. Te same zasilanie. Restart i reset nie pomagał tylko wyłączenie i włączenie zasilania. Może wada kości ale się uspokoiło.

Druga to sporadyczne same włączenie się światła. Przeważnie te same. Kondensator przy wejściu GPIO do masy nie pomaga więc planuje zastosować transpotory w obwodzie sterowania. Przy okazji otrzymam izolację.

Dopiero tak zbudowany szkielet planuje sterować z maliny+openhab+mqtt. Wszystkie skomplikowany reguły zależności współpraca z czujnikami przez malinę. Ilość portów praktycznie nieograniczona.

---

Dodam jeszcze, że ESP wstaje praktycznie kilka sekund.

Sterować można w prosty sposób za pomocą przeglądarki lub aplikacji HTTP Request Shortcuts. Tworzyć scenariusze itd.

Zapamiętywanie stanu wyłączników po padzie prądu nie jest do końca dobrym rozwiązaniem. Zakładamy, że jest wieczór oglądamy TV i pada prąd. Nie wiemy kiedy będzie. Rano wstajemy do roboty i dalej go nie ma. Gdy siedzimy w robocie prąd wraca i wszystko nam się zapala co było włączone wieczorem.

OdpowiedzCytuj
Dodane : 26/09/2020 9:38 pm
isom
 isom
(@isom)
Prezes Moderator Zasłużony dla Forum, Donator 2019, Donator 2K20

@sindap ja jednak wolę zapamiętywanie stanu po padzie prądu. Załóżmy, że jest wieczór i mamy gości, mignie na chwilę zasilanie i mamy ciemność pomroczną . Przy pamięci stanów oświetlenie wróci jak przy tradycyjnej instalacji. Na takie przypadki jak  Ty opisujesz receptą są reguły i np czujniki natężenia oświetlenia , jak wróci prąd jak jestem w robocie to najbliższa aktualizacja czujnika światła wyłączy niepotrzebne oświetlenie. 

OdpowiedzCytuj
Dodane : 26/09/2020 11:11 pm
sindap
(@sindap)
Młodzik

@isom Zgadza się. Wybór należy do nas. Impreza mogła się skończyć poszedłeś spać. O 2 nocy wrócił prąd i wstajesz i gasisz. Przepraszam wyłączasz telefonem no ale noc zerwana. Owszem można dać regułę, że jeżeli jest później niż 23 wyłącz oświetlenie po utracie zasilania itd ale oczywiście trzeba to wszystko brać pod uwagę i wybrać to co dla nas najwygodniejsze.

Można wybrać też model, że jeżeli zniknie zasilanie to bez konieczności zapamiętywania stanów po uruchomieniu systemu zawsze mają się włączyć podstawowe światła na powiedzmy 2 minuty aż zatwierdzimy co ma być włączone. Po braku naszej reakcji wszystko gaśnie.

OdpowiedzCytuj
Dodane : 26/09/2020 11:22 pm
Ombre
(@ombre)
Młodzik

Witaj @krzysztofch

Kolega z forum: @wielkim

(wątek: https://www.smartnydom.pl/forum/uklady-esp8266-i-inne-zrob-to-sam/sterowanie-16-przekaznikami/#post-15502)

zrobił na ESP home sterowanie 24 przekaźnikami oraz 12 przyciskami. Ja sprawdzę ESP home we wtorek i dam znać co z tego wyszło. Skoro inni dali radę to myślę, że warto wchodzić i potestować. 

Przekaźników do ESP Easy możesz podłączyć wieciej niż 12, tylko sygnałów wejściowych może być maks 12.

OdpowiedzCytuj
Dodane : 28/09/2020 10:41 am
sindap
(@sindap)
Młodzik

MCP23017 też mogą pracować jako wejścia i nie tylko 12. espeasy widzi ich stan bez jakiejs tam konfiguracji. Problemem jest tylko to że te wejścia nie nadają sie do przycisków dzwonkowych. Można je użyć do zwykłych przełączników i czujników.

OdpowiedzCytuj
Dodane : 28/09/2020 11:25 am
Ombre
(@ombre)
Młodzik

Jestem po kolejnych próbach ESP8266 współpracującym z PCF8574 i zestawienie komunikacji z Domoticz po MQTT.

ESP Easy pomimo wielu zmian w konfiguracji nie udało się zestawić sprawnej komunikacji za pomocą MQTT (najnowszy ESP EASY mega).

Liczne błędy widziane w logach, ciągłe ponowne nawiązywanie komunikacji oraz nie istniejący IDX0. Nie mam zrzutu ekranu z logów. Ale nie ma to znaczenia, ponieważ zmiana z ESP Easy na tym samym hardware oraz takiej samej konfiguracji na TASMOTA rozwiązała problem.

Jest dostępna dedykowana kompilacja dla współpracy z PCF8574. ESP8266 -> PCF8574 -> listwa przekaźników 8 szt.

https://github.com/arendst/Tasmota/issues/6765

PCF8574 ustawiony do obsługi wejść widzi ich zmianę ale jeszcze nie wiem jak to obsłużyć. Więcej osób ma z tym problem. Brak możliwości korzystania z włączników dzwonkowych, choć na ESP Easy dało się to skonfigurować 🙂

Z softu tasmota da się wysterować 8 przekaźników.

Możliwe jest również sterowanie 4 pierwszymi przekaźnikami z Domoticz,.

Również (o ile wejściami włączników dzwonkowych są GPIO z ESP) to da się sterować przekaźnikiem - zakładając ten sam IDX. Komunikacja po MQTT. Niestety odwrócona jest logika. Świecąca żarówka jest wyłączonym przekaźnikiem.

Po 15 minutach testowania ESP zrestartowało się oraz wszystkie ustawienia zostały przywrócone do domyślnych. Hipotetyczna przyczyna, niewydajne zasilanie z USB z komputera. Płytka Wemos D1 R2.

OdpowiedzCytuj
Dodane : 30/09/2020 9:06 am
Ombre
(@ombre)
Młodzik

@krzysztofch ESP8266 może obsłużyć więcej PCF8574. Sterowanie ich pinami będzie dostępne np po http z Domoticz.

Nie mniej jednak ESP Easy sam nie będzie w stanie stworzyć logiki obejmującej więcej niż 12 pinów. Czyli praca niezależna od sieci WiFi.

OdpowiedzCytuj
Dodane : 30/09/2020 9:09 am
Udostępnij: