Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 23 gru 2024, o 22:21


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 13 ] 
Autor Wiadomość
PostNapisane: 26 gru 2016, o 02:17 
Offline
Nowy

Dołączył(a): 08 lis 2014
Posty: 3
Pomógł: 0

http://viid.me/qyTqNe

Zapraszam do zabawy. ;) Pozdrawiam i wesołych świąt.

Projekt sterowania oświetleniem świątecznym
1. Założenia
→ Umożliwienie sterowania poszczególnymi lampkami (4 kanały) przed domem za pośrednictwem sieci.
→ Zabezpieczenie przed przeciążeniem sterownika ilością operacji.
→ Pewne odizolowanie modułu sterownika od wysokiego napięcia prądu zmiennego 230V.
→ Udostępnienie streama obrazu z kamery.
→ Budżet max: 150zł

2. Ogólna zasada działania
Klient łączy się do serwera http (zwykły hosting), na którym postawiona jest aplikacja klienta. Wczytywana jest zawartość strony, w której znajduje się kod JS łączący się z moim routerem za pośrednictwem protokołu ws. Adres mojego routera znajduje się na serwerze dynDNS. Do aktualizacji rekordów DNS wykorzystałem narzędzie ddclient.

W moim LAN znajdują się dwa urządzenia: Laptop o adresie 192.168.1.170 i Sterownik o adresie 192.168.1.171. Przekierowanie portów w routerze wyglądają następująco:

WAN 80 ←→ LAN 11221 (192.168.1.170)

Laptop wystawia serwer, do którego łączy się klient po protokole ws. Jest tam zainstalowany interpreter PHP w wersji 7. Oprogramowanie serwera wykorzystuje bibliotekę Ratchet. Odpowiada za przechowywanie stanów każdego kanału.
Sterownik wystawia serwer, do którego łączy się laptop na porcie 11222. Laptop wysyła do sterownika za pomocą protokołu TCP liczbę stanów kanałów w formacie dziesiętnym z zakresu 0-15. Liczba odpowiada każdej możliwej kombinacji stanów na kanałach. Po zamianie na liczbę binarną otrzymujemy stan dla każdego z kanałów, np. 0011, gdzie 0 oznacza wyłączony.

Stream obrazu obsługiwany jest przez serwer youtube. Laptop streamuje obraz za pomocą ffmpeg do serwera youtube.

3. Sterownik
Sterownik złożony jest na płytce prototypowej z elementów przewlekanych. Wszystkie elementy kosztowały łącznie 70zł nie licząc kosztów starej ładowarki do tableta, która służy jak zasilanie.

Elementy wykorzystane w układzie:
→ Mikrokontroler AtMega8 zasilany z 5V, taktowany 16MHz z programem odbierającym liczbę stanów kanałów za pomocą protokołu rs232 od modułu WiFi i wysyłający odpowiedź po poprawnym przełączeniu stanu rejestru. Liczba stanów jest odwracana (ze względu na budowę modułu przekaźnikowego). Rejestr podłączony jest do modułu przekaźnikowego. Podczas inicjalizacji wysyła do modułu niezbędne komendy AT służące do połączenia się z siecią i uruchomienie serwera TCP.

→ Moduł Wifi ESP8266 zasilany napięciem 3.3V razem z konwerterem poziomów logicznych interfejsu rs232 do mikrokontrolera. Komunikacja rs232 obydwa się z prędkością 115200bps.

→ 4-kanałowy moduł przekaźnikowy zasilany z 5V z przekaźnikami SRD-05VDC-SL-C oraz transoptorami EL817. Stan niski na wejściu każdego z kanałów załącza transoptor, który z kolei załącza przekaźnik. Do każdego z przekaźników podłączone są lampki zasilanie ~230V.

→ Kondensatory 4x100nF, 2x47uF; Stabilizator napięcia LD1117T w obudowie TO220; 8 diod LED (różne kolory) do sygnalizacji stanów na modułach.

4. Laptop
Na laptopie uruchomiona jest usługa która nasłuchuje na porcie 11221 za pomocą protokołu ws. Klienci wysyłają i odbierają dane w postaci JSONa. Przy każdej zmianie stanu wysyłana jest do sterownika liczba stanów kanałów.

Oczekiwanie na odpowiedź sterownika sygnalizującą wprowadzenie liczby stanów do rejestru. W trakcie oczekiwania odpowiada innym klientom na rządania zmiany stanu sygnałem busy oznaczającym zajętość. Jeśli klient zbyt często powoduje sygnał busy zostaje odłączony (połączenie zostaje zerwane i wyświetla się mu stosowny komunikat).

Stream odbywa się za pomocą narzędzia ffmpeg i protokołu rtmp oraz serwerów youtube.

Na streamie obrazu występuje ok. 10s. opóźnienie.
Jest to spowodowane przetwarzaniem strumienia przez serwer youtube. Jednak same zmiany stanów wprowadzane są ze średnio 300ms. opóźnieniem.



Ostatnio edytowano 31 gru 2016, o 04:17 przez SyntaxError, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 gru 2016, o 11:01 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 sie 2013
Posty: 3797
Lokalizacja: Grudziądz
Pomógł: 143

Super :) zostawiłem wszystkie zapalone tak jak je zastałem :)

Wysłane z mojego Kruger&Matz DRIVE 4 przy użyciu Tapatalka

_________________
Usługi druku przestrzennego - www.drumik.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 gru 2016, o 16:46 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 01 gru 2014
Posty: 77
Lokalizacja: Gorlice
Pomógł: 5

Jak dla mnie kawał dobrej i dobrze wykonanej pracy. Pobawiłem się chwilę tym działa bardzo fajnie.
Gratulacje za pomysł i wykonanie :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 gru 2016, o 16:50 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 01 lis 2015
Posty: 1448
Lokalizacja: okolice Warszawa
Pomógł: 149

:) :) hihi..
Ja też się pobawiłem oświetleniem kolegi. :D



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 gru 2016, o 14:34 
Offline
Użytkownik

Dołączył(a): 19 sty 2014
Posty: 83
Pomógł: 2

Czy można prosić o cześć programu do komunikacji ESP z ATMEGA ?
Szukam inspiracji do mojej stacji pogody.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 gru 2016, o 17:36 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 22 cze 2013
Posty: 988
Lokalizacja: Byram, MS 39272
Pomógł: 55

Składam oficjalną prośbę o wymianę żarówki bo podczas zabawy nie czuję się spełniony!

_________________
Pomysły na podpis - wyślij SMSa +1 769 243 0011



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 gru 2016, o 17:42 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 paź 2011
Posty: 8589
Pomógł: 337

WoodPaker napisał(a):
Składam oficjalną prośbę o wymianę żarówki bo podczas zabawy nie czuję się spełniony!


już popsułeś ??

_________________
Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 gru 2016, o 17:46 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 22 cze 2013
Posty: 988
Lokalizacja: Byram, MS 39272
Pomógł: 55

Jak wszedłem już było zepsute. A linka podesłał mi niejaki Jaglarz. Wnioskuję, że to on zepsuł!

_________________
Pomysły na podpis - wyślij SMSa +1 769 243 0011



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 gru 2016, o 17:48 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 paź 2011
Posty: 8589
Pomógł: 337

Cytuj:
A linka podesłał mi niejaki Jaglarz. Wnioskuję, że to on zepsuł!


Hmm no to całkiem możliwe ... zaklikał na smierć :)

_________________
Zbuduj swój system [url=https://helion.pl/ksiazki/w-labiryncie-iot-budowanie-urzadzen-z-wykorzystaniem-ukladow-esp8266-i-esp32-andrzej-gromczynski,wlablo.htm#format/d]IOT[/url]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 gru 2016, o 18:22 
Offline
Nowy

Dołączył(a): 08 lis 2014
Posty: 3
Pomógł: 0

Popsuł tato jak naprawiał rynnę, którą popsuliśmy razem przy przeciąganiu kabli. :D Jutro kupię nowe lampki chyba, bo te niebieskie i tak były słabe. ;) A na sylwestra szykuje coś bardziej sylwestrowego i chyba przeniosę to do pokoju, bo przez te latanie na poddasze schudłem z 5kg. A i wiatr na dworze wcale nie pomaga. :P

Cytuj:
Czy można prosić o cześć programu do komunikacji ESP z ATMEGA ?
Szukam inspiracji do mojej stacji pogody.

Wystarczy biblioteka Serial z Arduino i to http://botland.com.pl/pliki/1/ESP8266_Komendy_AT.pdf
Jak wrócę do domu to mogę dać kod, ale nie wiem czy jest sens.

A co do samej stacji to śmiem wątpić w efektywność takiego rozwiązania. Sam mam stacje pogodową Oregona WMR88. Jeśli chcesz udostępniać te dane w internecie (tym bardziej w sieciach pogodowych typu wunderground) to polecam rozejrzeć się za gotowym hardwarem, a zająć się tylko częścią software. Jak nie szkoda Ci kasy to polecam Davisa.
Jest też pełno softu do obsługi stacji pogodowych. Pod linuxem polecam http://weewx.com/. Taki soft potrafi generować content strony na bieżąco na podstawie templatek, które mu napiszesz. Jednak nie polecam tego rozwiązania, bo nie masz autoupdate, albo jest strasznie kijowy. Ja napisałem sobie API w PHPie działające na wspólnej bazie z tym softem, żeby obsługiwać stronkę w internecie i to rozwiązanie się sprawdza elegancko.



Ostatnio edytowano 27 gru 2016, o 18:33 przez SyntaxError, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 gru 2016, o 18:30 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 22 cze 2013
Posty: 988
Lokalizacja: Byram, MS 39272
Pomógł: 55

SyntaxError napisał(a):
Popsuł tato jak naprawiał rynnę, którą popsuliśmy razem przy przeciąganiu kabli. :D Jutro kupię nowe lampki chyba, bo te niebieskie i tak były słabe. ;) A na sylwestra szykuje coś bardziej sylwestrowego i chyba przeniosę to do pokoju, bo przez te latanie na poddasze schudłem z 5kg. A i wiatr na dworze wcale nie pomaga. :P


I po co się przyznawał? A tak to by można było trochę utrzeć nosa Jaglarzowi. Prawdziwy Syntaxerror normalnie!
Ale dziękuję za pozytywne rozpatrzenie mojej prośby! :)

_________________
Pomysły na podpis - wyślij SMSa +1 769 243 0011



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 gru 2016, o 18:47 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 01 lis 2015
Posty: 1448
Lokalizacja: okolice Warszawa
Pomógł: 149

Czyli to nie ja ? :roll: .. uff. . :)
hihi.. :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 gru 2016, o 10:31 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 14 lut 2014
Posty: 279
Lokalizacja: Kraków
Pomógł: 4

Bardzo mi się ten projekt spodobał! :D gratuluję autorowi!
Muszę wliść na stronkę w nocy :P

_________________
http://forum.atnel.pl/topic15633.html



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 13 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 1 gość


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO