Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Konwerter RS232 -> WiFi do obsługi centrali SATEL INTEGRA i nie tylko

Duch__ 31 Oct 2015 12:27 35256 51
Suntrack
  • Konwerter RS232 -> WiFi do obsługi centrali SATEL INTEGRA i nie tylko

    Witam.

    Dzisiaj chciałbym przedstawić bardzo prosty konwerter WIFI do RS232.
    W moim przypadku używam go do zdalnego nadzoru centrali alarmowej Integra128 w wersji 1.13 poprzez program GuardX. Możliwe jest również programowanie centrali poprzez Program DloadX. Nic nie stoi na przeszkodzie, aby poprzez port RS232 sterować bezprzewodowo innym urządzeniem zlokalizowanym gdzieś na końcu świata.

    Sercem układu jest ostatnio popularny układ ESP8266 z wgranym oprogramowaniem napisanym w języku LUA. Dodatkowo do prawidłowej konwersji poziomów napięć zastosowałem gotowy miniaturowy moduł konwertera oparty o układ MAX3232. W celu zapewnienia zasilania na poziomie 3.3V dla ESP i MAX, zastosowałem tanią przetwornicę DC-DC. Do prawidłowej pracy wymagany jest również darmowy program USR-VCOM, który tworzy nam wirtualny port COM.

    Koszty:
    ESP8266 - 30zł
    Moduł MAX3232 - 10zł
    Przetwornica DC-DC - 6zł
    Obudowa - 5zł
    Wtyk DB9 - 2zł

    Razem: 53zł

    Zasada działania:

    Po podłączeniu zasilania układ łączy się z moją domową siecią WIFI. Program USR-VCOM zestawia połączenie z modułem ESP. Po podłączeniu urządzenia do gniazda RS232 i skonfigurowaniu portu COM można już bezprzewodowo łączyć się z naszym sterownikiem bądź też w moim przypadku centralą alarmową.
    Po skonfigurowaniu przekierowania portów możliwe jest sterowanie zdalne z drugiego końca świata.


    Zaletą niniejszego rozwiązania jest to, że nie potrzebujemy modułu ETHM firmy SATEL, by zdalnie zarządzać centralą alarmową oraz ją programować. Wadą natomiast jest to, że nie ma szyfrowania danych (zalecany np. VPN) oraz że nie zadziałają żadne aplikacje na Androida firmy SATEL np. Mobile KPD.

    Zdjęcia:
    Konwerter RS232 -> WiFi do obsługi centrali SATEL INTEGRA i nie tylko Konwerter RS232 -> WiFi do obsługi centrali SATEL INTEGRA i nie tylko Konwerter RS232 -> WiFi do obsługi centrali SATEL INTEGRA i nie tylko

    Wideo:




    Pozdrawiam,
    Tomek

    Cool? Ranking DIY
    About Author
    Duch__
    Level 31  
    Offline 
    Has specialization in: bascom, avr, alarmy, telewizja, monitoring
    Duch__ wrote 2301 posts with rating 1566, helped 33 times. Live in city Opole. Been with us since 2004 year.
  • Suntrack
  • #2
    noyo
    Level 18  
    Dla mnie bomba, coś takego szukałem, a może masz coś nie po wifi, a po lanie?
    Próbowałeś może komunikować się, z tym przez linuxa?
  • Suntrack
  • #3
    adversus
    Level 32  
    Świetne rozwiązanie, proste a zarazem mające duży potencjał.
    Jeśli możesz dołącz wsad do do ESP8266. Wsad pisałeś samemu czy znaleziony jest w necie.
  • #4
    Dariusz Goliński
    Level 22  
    Siemka
    JAk wygląda sprawa konfigurowania twojego konwertera do wifi. Ustawienie ssid itp. ?
    Czy dało by się zrobić do RS485 ?
    Czy może to pracować w trybie Point-Point bez użycia AP ?
  • #5
    Duch__
    Level 31  
    stoperekk wrote:
    ...może masz coś nie po wifi, a po lanie?
    Próbowałeś może komunikować się, z tym przez linuxa?


    Na razie opracowałem sobie takie rozwiązanie. Obecnie jestem w fazie prac nad wersją LAN wykorzystując do tego Arduino UNO i moduł W5100. Pod linuxem nie testowałem.

    adversus wrote:

    Jeśli możesz dołącz wsad do do ESP8266. Wsad pisałeś samemu czy znaleziony jest w necie.


    Wsad znaleziony w necie z drobną modyfikacją do moich celów.

    Poniżej kod źródłowy do wgrania do modułu ESP8266.
    Code: vbnet
    Log in, to see the code


    Dariusz Goliński wrote:
    JAk wygląda sprawa konfigurowania twojego konwertera do wifi. Ustawienie ssid itp. ?
    Czy dało by się zrobić do RS485 ?
    Czy może to pracować w trybie Point-Point bez użycia AP ?


    Ustawienia SSID, HASŁO, ADRES IP, MASKA, BRAMA są na sztywno ustawiane w programie bez możliwości zmiany tych parametrów bez przeprogramowywania układu. Poprostu raz ustawione i "zapomniane".
    Myśle że nie było by problemu zrobić na RS485. Wystarczy wykorzystać jedno z dwóch wyjść GPIO i sterować kierunkiem transmisji programowo lub zaprząc do tego np. NE555 i zrobić to sprzętowo. Jeśli chodzi o łączność punkt-punkt to ESP8266 ma możliwość pracy jako AP. Wtedy jeden układ programujesz jako AP, a drugi identyczny moduł ustawiasz w tryb STATION.
  • #8
    granacik
    Level 22  
    Witam a jaką prędkość osiąga urządzenie? Jeśli dałoby radę 10400 to widze tutaj duże zastosowanie przy diagnostycze samochodowej. Osobiście zrobiłbym tak:

    Urządzenie próbuje podłączyć się pod wifi i jeśli po kilku próbach nie znajduje sieci przełącza się w tryb AP z dhcp ,tak mam ustawione w es8266 a po zalogowaniu do esp po IP z kompa/tabletu mam możliwość wyboru sieci bezprzewodowej oraz wprowadzenie hasła. Jeśli chcesz mogę podzielić się kodem.
  • #9
    gosztekseba
    Level 31  
    Gratulacje, fajny i ciekawy projekt, a do tego dość ładnie się prezentuje. Ostatnio myślałem nad podobnym rozwiązaniem, ale z wykorzystaniem modułu sieciowego Ethernet ENC28J60. Konwerter ten miał być podłączany kablowo z routerem poprzez RJ45, a następnie miał być podłączony złączem RS232 z pseudo sterownikiem PLC, który opublikowałem na elektrodzie. Do sterowania wykorzystany miał być telefon z systemem Android, który podłączony byłby do sieci Internet. Jak znajdę trochę czasu to opublikuje na elektrodzie "ala" panel HMI na podstawie telefonu dla tamtego sterownika. Narazie łączy się on poprzez bluetooth ze sterownikiem, ale docelowo ma być to właśnie połączenie poprzez sieć Internet. Pozdrawiam
  • #10
    Duch__
    Level 31  
    granacik wrote:
    Witam a jaką prędkość osiąga urządzenie? [...]Jeśli chcesz mogę podzielić się kodem.


    Mój układ działa z prędkością 19200 bps. Z chęcią spojrzę do twojego kodu gdyż takie rozwiązanie też było by ciekawe.

    gosztekseba wrote:
    [..]
    Dzięki! Tak jak pisałem wcześniej też pracuje nad podobnym rozwiązaniem poprzez LAN i moduł W5100.
  • #11
    rsikon
    Level 26  
    ESP8266 jako bramka WIFI <-> RS232 to niemal "dziecinnie proste".
    Jeśli ktoś tu pyta o kod to niestety krótko mówiąc "leń".

    Moja wersja: PCB 20x30 zawiera ESP, zasilanie 5v to 3v oraz translator sygnałów 5v to 3v.

    Mamy RS232 to WIFI a przy okazji "serwerek www" z pomocnymi danymi.

    Konwerter RS232 -> WiFi do obsługi centrali SATEL INTEGRA i nie tylko Konwerter RS232 -> WiFi do obsługi centrali SATEL INTEGRA i nie tylko

    Podobne ustrojstwo, oczywiście plus zasilacz i układ wykonawczy, pracuje u mnie jako termostat bojlera elektrycznego 250l. Sterowanie, podgląd parametrów www:

    Konwerter RS232 -> WiFi do obsługi centrali SATEL INTEGRA i nie tylko

    Niestarczyło mi czasu na "dopracowanie" ADC - zawyża wynik. Tu uruchomione testowo i tak już zostało.
  • #12
    icer_cmg
    Level 12  
    Praca ESP jako most wifi<-> rs232 czy wifi <-> rs485jest śmiesznie prosta. Do tego dowolność - TCP czy UDP. Do tego ustawienie STA/AP i można bez problemu zmieniać ustawienia: SSID, HASŁO, ADRES IP, MASKA, BRAMA.
  • #13
    adversus
    Level 32  
    Widzę że sami geniusze tu bywaja skoro to wszystko takie proste, a nie bierzecie pod uwage że nie każdy ma np czas na siedzenie nad elektronika ale ma te pasje, poza tym poznawanie innych rozwiazań skłania do poszerzania wiedzy. Koledzy więcej skromności i mniej cynizmu.
  • #14
    rsikon
    Level 26  
    Ja mam chroniczny brak czasu... Doskonale to rozumiem.
    Jednak do samego ESP8266 podstawowy kod jest udostępniony na stronie producenta. Minimalne uruchomienie testowe to dosłownie kopiuj - wklej.
    A kodu dosłownie kilkanascie linijek dla samego WIFI i RS232.
    Tyle, że chwile trzeba pomyśleć by z kilku przykładów (WIFI, RS232, WEB SERWER) sklecić całość.
  • #15
    adversus
    Level 32  
    To ze ktos poprosi, zaznaczam poprosi o wklejenie kodu to jest lenistwo ????? Można powiedzieć też że każdy sądzi po sobie.
  • #17
    rsikon
    Level 26  
    Tak znam to. Najlepiej za dziękuje.
    Najprościej używać czegoś co nic nie kosztowało i ma się ot tak.

    Takie podejście do "problemów" niczego nie uczy.
    Pomęcz się z tematem godzinę, dwie - sporo zostanie Ci w głowie.

    Chcesz coś pewnego i sprawdzonego, kup gotową przejściówkę wifitors232.
  • #18
    icer_cmg
    Level 12  
    Może odniosę się do swojego postu - chodziło mi o to, że w dość łatwy sposób można mieć przejściówkę wifi<->rs232/rs485 na esp8266 pisząc wsad w arduino ide. Mam ich kilka i troszkę męczące dla mnie byłoby wklepywanie parametrów do programu i programowanie układu, dlatego mam wejście bezpośrednio do modułu i małą stronkę konfiguracyjną. Wtedy jednocześnie moduł jest przeźroczysty jako przejściówka i dodatkowo jako odrębne urządzenie, w którym można zmienić ustawienia.
  • #19
    linuxtorpeda
    Level 26  
    @rsikon
    Nie Ciebie proszę o udostępnienie źródeł, więc hipokryzję zostaw dla siebie, moją edukacją też się nie interesuj.

    @Duch__
    Jeśli nie masz planów komercjalizacji projektu, to warto by było opublikować źródła i schematy na jakiejś sensownej licencji. Nic nie tracisz, inni zyskają.
  • #20
    adversus
    Level 32  
    Podejdźcie to tematu w inny sposób, nie każdy musi umieć programować, a jak wspomniał kolega wyżej czasami komuś wystarcza kopia, bez zagłebiania sie w nauke programowania. A warto mieć wiedzę co i jak działa i myślę że nei jedna osoba jeśli będzie zainteresowana to z pewnością sie zagłebi w temat.

    Ja osobiście korzystam z innego rozwiazania, w zależności od potrzebnej ilości portów server LAN-USB udostepniajacy w sieci porty USB ( w ilości 1 lub 4 zaleznie od wersji), dość praktyczne rozwiązanie, do tego przejścówka USB RS232 czy 485 w zależności od potrzeb.

    Konwerter RS232 -> WiFi do obsługi centrali SATEL INTEGRA i nie tylko
    Konwerter RS232 -> WiFi do obsługi centrali SATEL INTEGRA i nie tylko

    Swego czasu tez korzystałem z innego rozwiązania - Tibbo EM203. Mały serwerek udostepniający bezpośrednio port RS w sieci. Bardzo przyzwoite rozwiazanie, działa do dziś bez zastrzeżeń.

    Konwerter RS232 -> WiFi do obsługi centrali SATEL INTEGRA i nie tylko

    Rozwiązanie nie drogie (ale ceną nie przebije ESP8266 za 3$), pewne (nie byłożadnych problemów z uruchomieniem), zawsze staram się korzystac z przejściówek na FTDI (do Profilica nie mam zaufania). Przetestowane z Satelem (właśnie jak kolegi z Integrą), z pożarówka, również mam wpięta w instalacje z LCN. Dla mie podstawowa zaleta to połączenie po LAN (przewodowe, WiFi jest ok, ale bywa zawodne z różnych przyczyn a kabel to kabel - zawsze działa).
  • #21
    granacik
    Level 22  
    Nie każdy ma czas by pół dnia buszować po internecie oraz nie każdy jest zawodowym programistą czy elektronikiem. Więc drodzy koledzy zrozumcie tych, dla których jest to czysta zabawa/hobby i niejednokrotnie mały kroczek dla was jest dla takich osób ogromnym wyzwaniem.

    Podaje stronę z której wykorzystałem kod https://www.hackster.io/noelportugal/ifttt-smart-button-e11841

    Powodzenia
  • #23
    mack12
    Level 11  
    Jest driver portu szeregowego pod windows? Napisany został samodzielnie, czy dostarcza producent tego ESP8266?
  • #25
    Mikolaj_pl
    Level 16  
    Duch__ wrote:

    Wadą natomiast jest to, że nie ma szyfrowania danych (zalecany np. VPN) oraz że nie zadziałają żadne aplikacje na Androida firmy SATEL np. Mobile KPD.
    Tomek


    To znaczy że masz wifi bez szyfrowania o_O
  • #27
    Duch__
    Level 31  
    W konwerterze MAX3232 podłącz wolne wyjście "TX" po stronie TTL do masy tak by na wyjściu "TX" po stronie RS232 pojawił Ci się stan wysoki zbliżony do 12V (u mnie wynosi on około 6V). To wyjście po stronie RS232 podłącz do pinu 4 poprzez rezystor 2k2.
  • #28
    cosmit
    Level 12  
    Nie pomoglo :( w USR-VCOM widze ze jakas komunikacja idzie pomiedzy centralka a dloadx ale bez komunikatu o polaczeniu.

    Mam Integre128wrl i na fizycznym rs232 wszystko dziala. Nie bardzo wiem co moge jeszcze sprawdzic

    Dodano po 57 [minuty]:

    Mam pytanko jeszcze o PARITY: dloadX ma ustawione 'EVEN' (chyba nie da sie tego zmienic bo opcja jest wysarzona) natomiast w kodzie jest 'NONE'. Czy to moze byc powod braku komunikacji? Jak sobie z tym poradziles?
  • #29
    Duch__
    Level 31  
    Masz w ogóle w centrali włączony tryb DOWNLOADING i oczywiście prędkość 19200? Spróbuj podłączyć się pod klawiaturę jeśli posiadasz INT-KLCD-GR. Wtedy ustaw adapter WIFI na 4800 bitów i przetestuj z programem GUARDX.
  • #30
    cosmit
    Level 12  
    1) Downloading wlaczony, podpinam sie pod fizyczny COM i wszystko dziala.
    2) Po zwarciu we wtyczce TX i RX widze w monitorze, ze dokladnie to co wyslane trafia z powrotem do komputera. Czyli nic sie nie gubi i caly lancuszek dziala.
    3) DLOADX wysyla mniej wiecej cos takiego:
    01 01 4F 4C 35 74 8A FF 75 8C F6 3E FF
    Centrala zawsze odpowiada mi tym:
    01 01 01 01 01 01 01 01 01 01 01 01......

    Albo gdzies jest skopana konfiguracja (np parity), albo nie wiem co :) Powalcze jeszcze z tym na spokojnie.

    Skad masz sciagniety wsad do procka i w jakiej wersji?