• Szanowny Użytkowniku, serwisy w domenie modelarstwo.info wykorzystują pliki cookie by ułatwić korzystanie z naszych serwisów. Jeśli nie chcesz, by pliki cookies były zapisywane na Twoim dysku zmień ustawienia swojej przeglądarki.

Bezprzewodowy Pulpit Kostkowy

Szwagier

Nowy użytkownik
Reakcje
14 0 0
#1
Przygotowałem krótką prezentację zrealizowanego pulpitu, którą zamieściłem w wątku "Elektromechanika" u Lucky'ego. W związku z licznymi pytaniami, które pojawiły się ze strony zainteresowanych, postanowiłem utworzyć dedykowany wątek.

Na podstawie planu przygotowanego przez szwagra Krzysztofa "młodego" Młodzikowskiego (link do wątku):

Schemat torowy MD Ostrów (1).jpg

powstał projekt pulpitu kostkowego:

Pulpit_Plan.jpg
który wygląda tak:



Tradycyjne sterowanie akcesoriami na makiecie, takimi jak rozjazdy czy semafory, często wiąże się z plątaniną kabli prowadzących do centralnego pulpitu. Dlatego postanowiłem wykorzystać mikrokontrolery ESP-8266 aby stworzyć bezprzewodowy i elastycznego system sterowania. Zamiast jednego centralnego kontrolera, sam pulpit staje się zbiorem niezależnych modułów – "kostek" – z których każda odpowiada za jeden konkretny element na makiecie.

Każda funkcja sterująca (np. jeden rozjazd, jeden semafor) jest obsługiwana przez parę urządzeń:
  1. Kostka sterująca (na pulpicie). Moduł, wewnątrz którego znajduje się mikrokontroler, na zewnątrz umieszczone są fizyczne elementy sterujące: przyciski (do zmiany położenia rozjazdu, semafora) oraz diody LED informujące o aktualnym stanie sparowanego elementu.
  2. Moduł wykonawczy (na makiecie). Moduł z mikrokontrolerem podłączony do napędu lub sygnalizatora.
Te dwa urządzenia tworzą nierozerwalną, bezprzewodową parę, która komunikuje się wyłącznie między sobą.

Zalety takiego rozwiązanie są oczywiste:
  • minimalizacja okablowania; koniec z ogromną ilością przewodów biegnących pod makietą. Każdy moduł wykonawczy potrzebuje tylko lokalnego zasilania
  • maksymalna modularność i skalowalność; pulpit można rozbudowywać w dowolnym momencie, dodając kolejne kostki. Nie ma limitu liczby urządzeń, poza fizycznym miejscem
  • niezawodność i odporność na awarie; awaria jednej kostki lub jednego modułu wykonawczego nie ma żadnego wpływu na działanie reszty systemu. Nie ma centralnego punktu awarii
  • brak konfliktów i zakłóceń; komunikacja jest ściśle "jeden do jednego" (peer-to-peer, nie mesh), nie ma ryzyka, że polecenie dla jednego rozjazdu zostanie przechwycone przez inny
  • łatwość diagnostyki; jeśli dany rozjazd nie działa, problem jest ograniczony do jednej pary urządzeń: jego kostki sterującej i modułu wykonawczego
Tak wyglądają przykładowe kostki (5x5x3 cm):


A tak serwo rozjazdu.


Będę wdzięczny za wszelkie komentarze, sugestie oraz uwagi dotyczące projektu.
 

Załączniki

Amatorek

Aktywny użytkownik
Reakcje
302 2 0
#2
Gratulacje pomysłu i rozwiązania. Wsad (sketch) do ESP jak rozumiem własna koncepcja od podstaw?

Zastanawiam się nad jednym - jeśli każda para kontroler - wyrobnik to zamknięta komunikacja przy założeniu wykorzystania WiFi mamy nagle wiele sieci (co w środku - MQTT?). No chyba, że jednak system wykorzystuje własną wspólną sieć na jednym SSID. Po prostu mam obawy co do zakłóceń i/lub gubienia komunikatów między elementami ale jak rozumiem projekt POC wykazał, że to działa ;)

Trzeba też mieć na uwadze, że taki system jest systemem zamkniętym tzn nie można podłączyć innych komponentów np DCC idąc dalej nie da się automatyzować dostępnymi programami. No chyba, że nie wszystko napisałeś we wstępie. ;)

Na rynku są fajne rozwiązania pozwalające na integrację systemów analogowych (taki pulpit) z siecią DCC.

Abstrahując od powyższego przyjmij uznanie za wkład pracy w opracowanie koncepcji i wykonanie. To wymagało sporo czasu. Podoba mi się zwłaszcza "kostka" do serwa z wyłącznikami krańcowymi :)
 
OP
OP
S

Szwagier

Nowy użytkownik
Reakcje
14 0 0
#3
Wsad do ESP własny.

Nie korzystam z sieci WiFi w powszechnym znaczeniu, tzn. tej, do której podłączasz np. urządzenia mobilne: smartfony, tablety itp. Wykorzystuję ESP-NOW – protokół komunikacji bezprzewodowej opracowany przez Espressif, umożliwiający bezpośrednią komunikację między urządzeniami ESP8266/ESP32 bez potrzeby routera.
ESP używa tego samego radia 2.4 GHz i tej samej anteny co standardowe WiFi, ale to inny protokół komunikacyjny, działający na niższej warstwie. Urządzenia komunikują się bezpośrednio (peer-to-peer) po adresach MAC, bez tworzenia tradycyjnej sieci WiFi z SSID i hasłem. W skrócie: ESP-NOW to "krewny" WiFi – korzysta z tego samego sprzętu, ale "mówi innym językiem" i nie potrzebuje infrastruktury sieciowej (routera) do działania.
Nie tworzę więc żadnej klasycznej sieci WiFi. Wysyłam krótki pakiet danych (maksymalny rozmiar 250 bajtów) tylko wtedy, gdy coś się zmieni na pulpicie.
Protokół ma oczywiście wady, m.in. brak automatycznej retransmisji – callback informuje o dostarczeniu, ale nie ma wbudowanego mechanizmu ponawiania. Dlatego samodzielnie implementuję potwierdzanie i kontrolę błędów. Wysyłam pakiet i czekam na potwierdzenie od modułu wykonawczego. Jeśli potwierdzenie nie nadejdzie, powtarzam wysyłkę – maksymalnie 10 razy w odstępach 200 ms (łącznie około 2 sekundy). W tym czasie wszystko na kostce zaczyna "mrugać", sygnalizując błąd komunikacji. Po dziesięciu próbach kontrolki wracają do pierwotnego położenia (ostatniego potwierdzonego stanu).

System zamknięty, zgadza się.

Buduję również centralki DCC oparte na ESP32 i Arduino Motor Shield na podstawie darmowego i otwartego oprogramowania oraz projektów sprzętu DCC-EX Model Railroading. To w pełni funkcjonalna, open-source'owa centrala DCC, która nie ustępuje możliwościami innym, kosztującym kilkukrotnie więcej rozwiązaniom. Zapraszam do lektury: Centrala DCC Wi-Fi EX-CommandStation
 
Autor wątku Podobne wątki Forum Odpowiedzi Data
Elektryka 2
Elektryka 4
Elektryka 16
Elektryka 10
Elektryka 36

Podobne wątki