Elektroda.pl
Elektroda.pl
X
AM TechnologiesAM Technologies
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Protokół komunikacyjny domofonów miwi urmet, typ BASIC

06 Mar 2016 19:07 3483 34
  • Poziom 1  
    Witam Szanownych Forumowiczów,

    Jest to mój pierwszy post od założenia konta w 2011 roku. Na wstępie chciałbym zaznaczyć, że przeszukałem forum pod kątem interesujących mnie zagadnień i nie znalazłem odpowiedzi.


    Moje pytanie to: Jak dokładnie wygląda komunikacja/ schemat działania domofonu cyfrowego z systemu basic?


    Cała zagwozdka powstała przy konstrukcji ciekawego (tak myślę) systemu na użytek własny. Otóż moim celem jest stworzenie interfejsu (w pełni) cyfrowego do obsługi domofonu z poziomu aplikacji na komputer, czy telefon.
    Doszedłem do wniosku, że najlepiej będzie wykorzystać raspberry pi (jako serwer obsługujący klientów - komputer/telefon), oraz dodatki w postaci arduino, czy jakichś mniejszych układów, na przykład konwersji wyższych napięć (logika 3.3v w raspi) do obsługi komunikacji z centralką domofonu.



    Zacząłem od nasłuchiwania dwużyłowego połączenia (linie L+/L-) analizatorem stanów logicznych Saleae, wynik tego nasłuchu poniżej:

    Protokół komunikacyjny domofonów miwi urmet, typ BASIC
    Legenda: Channel_1 - L+; Channel_3 - L-;

    Linia + wykorzystywana jest ewidentnie jako zasilanie wszystkich domofonów (stałe napięcie 5.5V), oraz po części jako sygnał "uwaga będzie komenda na linii -", Linia - służy za linię "data" - sygnałową, oraz masę zasilania.
    Procedura wywołania wygląda w ten sposób:

    Linia + na chwilę schodzi na stan niski, zaraz potem następuje wejście na stan wysoki linii - (na 0.1s), potem chwila oczekiwania (również 0.1s), po czym "zaskakuje" liczba impulsów odpowiadających numerowi wybranego lokalu (pary w postaci: niski na linii +, potem wysoki na linii -). Po takim "zaadresowaniu" pakietu następuje krótka przerwa (0.1s), oraz wywoływanie sygnału poprzez nieustanne wysyłanie stanów wysokich na linii -. (Na tym przykładzie tego nie widać, ponieważ rozmowa została natychmiast odebrana - słuchawka była podniesiona). Na sam koniec znowu widać sygnał wysoki na linii - przez 0.1s, co oznacza reset i zakończenie połączenia.


    Zagadką jest pusty obszar pomiędzy - przecież powinna być tam cyfrowa transmisja dźwięku! (Niestety tak nie jest :cry: )

    Sprawdziłem najpierw oscyloskopem zrobionym na bazie arduino, niestety w trakcie rozmowy na linii l+ utrzymuje się stałe napięcie, linia l- robi za masę.

    Przez chwilę zwątpiłem i pomyślałem, że może to słynny przekaz myśli, a nie impulsy elektryczne... :D

    Na szczęście - nic bardziej mylnego. Chwilę mi to zajęło, ale doszedłem do tego, że po odebraniu rozmowy system w domofonie (słuchawce w mieszkaniu) przechodzi na "drugi obwód".
    Przez linię pomiędzy domofonem a centralką zaczyna przepływać prąd ~75mA.
    Zmienia się on w zależności od poziomu/barwy głosu kiedy mówimy do mikrofonu. Przez przypadek domyśliłem się jak działa otwieranie drzwi. Otóż wystarczy pomiędzy linie l+/l- podłączyć opornik o odpowiedniej wartości. Ten sam efekt można uzyskać, odpowiednio modulując dźwięk w słuchawce. (Nie wiem jakie konsekwencje ma to w stosunku do bezpieczeństwa i czy ktoś nie mógłby otworzyć domofonu z drugiej strony, tego nie sprawdzałem.)

    Z zaobserwowanych zjawisk wyciągnąłem następujący wniosek; Skoro w trakcie rozmowy zmienia się natężenie prądu (tylko i wyłącznie), to mikrofon działa jak zwykły oporowy. W takim razie schemat układu w trakcie rozmowy przybiera (mniej-więcej) taką postać:
    Protokół komunikacyjny domofonów miwi urmet, typ BASIC


    Tego wszystkiego co tu zaprezentowałem, chcąc odpowiedzieć na wyżej postawione pytanie, nie jestem pewien. Nasuwa mi się w związku z tym wiele pytań:
    - Dlaczego cyfrowy domofon nie jest całkowicie cyfrowy, tylko w małym kawałku?
    - Dlaczego nigdzie nie ma specyfikacji tego łącza?
    - Dlaczego wszyscy producenci bez najmniejszego skrępowania, korzystają z tego samego rozwiązania?
    - Dlaczego tak wbrew pozorom archaiczny system sprzedawany jest za tak ciężkie pieniądze?
    (i najważniejsze)
    - Czy da się taką słuchawkę (pomijając cyfrową część komunikacji - bo to akurat łatwe) zastąpić np. przez rapsberry i czy da się odbierać/wysyłać sygnały dźwiękowe? (wiem że samo raspberry nie posiada analogowego wyjścia/wejścia, ale czy z dodatkowym układem jest to możliwe?)

    Pozdrawiam i liczę na łaskawe oko moderatorów,
    Marek.


    ............................................................................
    Ogłoszenie

    Zapraszamy do zapoznania się z pozostałymi poradnikami, tematami wyróżnionymi, artykułami, z zakresu systemów zabezpieczeń takich jak domofony, automatyka bram i szlabanów, systemy alarmowe, kamery, kontrola dostępu:
    Poradniki dot. systemów zabezpieczeń


    Jeżeli w w/w tematach nie znajdziesz odpowiedzi na swoje pytanie, zapraszamy na forum:
    Systemy zabezpieczeń


    Zachęcamy również do odwiedzenia sekcji Poradniki Ogólne, gdzie znajdziecie materiały z pozostałych działów forum, w tym dla osób rozpoczynających swoją przygodę z elektroniką:
    Poradniki Ogólne
  • AM TechnologiesAM Technologies
  • Specjalista - zasilacze komputerowe
    Kilka lat temu we wszystkich blokach osiedla wymieniono domofony na cyfrowe.

    Cyfrowe - już sama nazwa stawia na baczność.

    Niewiele wiem o domofonach poza tym, że znam zasadę. Ciekawość wzięła górę i postanowiłem przyjrzeć się części umieszczonej w mieszkaniu. Po kilku kwadransach miałem już zrysowany schemat tzw. unifonu.
    Protokół komunikacyjny domofonów miwi urmet, typ BASIC
    Nie mam dostępu do serca domofonu schowanego gdzieś w piwnicy. Poza tym podszedłem do tego hobbystycznie zaspokajając ciekawość.

    Część cyfrowa to przede wszystkim procesor odpowiedzialny za wywołanie kolejnego mieszkania i obsługę klawiatury przy wejściu.

    Przypuszczam, że w innych może być podobnie ale o szczegóły trzeba pytać kolegów zajmujących się profesjonalnie kontrolą dostępu.
  • Specjalista Domofony
    W.P. napisał:
    Kilka lat temu we wszystkich blokach osiedla wymieniono domofony na cyfrowe.

    Cyfrowe - już sama nazwa stawia na baczność.

    Niewiele wiem o domofonach poza tym, że znam zasadę. Ciekawość wzięła górę i postanowiłem przyjrzeć się części umieszczonej w mieszkaniu. Po kilku kwadransach miałem już zrysowany schemat tzw. unifonu.
    Protokół komunikacyjny domofonów miwi urmet, typ BASIC


    Elektronikiem nie jestem, ale na schemacie nie widzę dekodera, więc to raczej nie jest schemat unifonu cyfrowego.

    Pozdrawiam
  • Pomocny dla użytkowników
    Ten schemat wygląda podobnie do schematu unifonu analogowego dwużyłowego "SMT" firmy Cyfral. Tak więc z cyfrowym nie ma nic wspólnego.

    Protokół komunikacyjny domofonów miwi urmet, typ BASIC
  • AM TechnologiesAM Technologies
  • Specjalista - zasilacze komputerowe
    Ircys napisał:
    ale na schemacie nie widzę dekodera,
    Jest w piwnicy, razem z zasilaczem. Wszystko w szafce z kłódką. Schemat przedstawia jedynie unifon.

    A tak z ciekawości... Może ktoś z Kolegów dysponuje schematem unifonu cyfrowego i mógłby go zaprezentować. Nie wiem, czy takie są. W końcu to tylko domofon.
  • Specjalista Domofony
    W.P. napisał:
    Ircys napisał:
    ale na schemacie nie widzę dekodera,
    Jest w piwnicy, razem z zasilaczem. Wszystko w szafce z kłódką. Schemat przedstawia jedynie unifon.


    Podsumowując - nie jest to schemat unifonu cyfrowego.

    Pozdrawiam
  • Poziom 12  
    Układ 40103 jest 8 bitowym dekoderem. Za pomocą zworek ustawiamy
    numer lokalu zgodnie z tabelą wagi bitów.
  • Specjalista Domofony
    wintex napisał:
    Układ 40103 jest 8 bitowym dekoderem.


    I on jest widoczny na schemacie, który Ty zamieściłeś.
    Chodzi o to, że kol. W.P. wskoczył tu jak filip z konopii z kompletnie nie pasującym do tematu wątku schematem unifonu analogowego.

    Pozdrawiam
  • Poziom 31  
    Ircys napisał:
    W.P. napisał:
    Ircys napisał:
    ale na schemacie nie widzę dekodera,
    Jest w piwnicy, razem z zasilaczem. Wszystko w szafce z kłódką. Schemat przedstawia jedynie unifon.

    Podsumowując - nie jest to schemat unifonu cyfrowego.

    Cyfrowy też nie jest cyfrowy, "cyfrowo" (liczba impulsów)wybierany jest unifon sam rozmowa jest realizowana ja w zwykłej telefonii analogowej gdzie centralka domofonowa jest źródłem prądowym.
  • Specjalista Domofony
    LChucki napisał:
    Ircys napisał:
    W.P. napisał:
    Ircys napisał:
    ale na schemacie nie widzę dekodera,
    Jest w piwnicy, razem z zasilaczem. Wszystko w szafce z kłódką. Schemat przedstawia jedynie unifon.

    Podsumowując - nie jest to schemat unifonu cyfrowego.

    Cyfrowy też nie jest cyfrowy, "cyfrowo" (liczba impulsów)wybierany jest unifon sam rozmowa jest realizowana ja w zwykłej telefonii analogowej gdzie centralka domofonowa jest źródłem prądowym.


    OK - nie jest do schemat unifonu z wybieraniem cyfrowym

    Pozdrawiam
  • Poziom 31  
    Ircys napisał:
    OK - nie jest do schemat unifonu z wybieraniem cyfrowym

    Teraz bardziej precyzyjnie.

    Co do potocznie zwanych cyfrowymi, mogę uzupełnić informacje z #1 o:
    - otwieranie rygla to przerwa w obwodzie (jak FLASH w telefonach analogowych) na czas ok 10ms.
    - drugi przycisk (np brama) 20..25ms (takie spotkałem).
    - detekcja podniesienia słuchawki: zwiększenie prądu w obwodzie do ok 60..80mA.
    - detekcja domofonu (niektóre systemy to mają) wzrost poboru prądu podczas wywołania do ok 4..8mA.
  • Poziom 12  
    schemat , który zamieściłem to tylko część cyfrowa służąca do
    wybierania numeru lokalu do tego trzeba dołożyć część analogową .
    Kol. LChucki ma rację pisząc o niektórych procedurach , ale to nie
    wszystko ponieważ w grę wchodzi sygnał resetu linii aby ustawić wszystkie
    dekodery pracujące na linii . Nie zagłębiałem się w ten temat ,ale jak
    miałbym zrobić coś takiego to rozważył bym użycie 1 Wire .
  • Poziom 31  
    wintex napisał:
    w grę wchodzi sygnał resetu linii aby ustawić wszystkie
    dekodery pracujące na linii

    To po prostu wyłączenie zasilania magistrali na kilkaset ms.

    wintex napisał:
    jak
    miałbym zrobić coś takiego to rozważył bym użycie 1 Wire .

    1-Wire nie obsłuży 255 urządzeń ponadto nie jest przystosowane to zasilenia słuchawki w czasie rozmowy a także przesyłania sygnału audio. 1-Wire ma unikalne ID więc rodzi się problem z koniecznością "rejestracji" unifonu. Już widzę "zadowolenie" serwisantów.
    Rozwiązanie z własna magistralą byłoby niekompatybilne z pozostałymi, przez co użytkownicy byliby skazanie na "jedynie słuszne" unifony.
    Kolejny problem to układy głośnomówiące, sygnalizatory, mostki GSM i inne udogodnienia. Jest kolega w stanie, w sensownym czasie, opracować takie urządzenia dodatkowe? Jak nie, to produkt kolegi będzie daleko w tyle za konkurencją.
  • Poziom 12  
    Nie jestem specjalistą od domofonów ale ile adresów może być na linii
    to zależy od Mastera , poza tym 1 Wire jest stosowany na odległości
    do 25m to istotne ograniczenie . Samo napięcie na linii nie pochodzi 1 Wire .
  • Poziom 31  
    wintex napisał:
    ile adresów może być na linii
    to zależy od Mastera

    Nie. Np w RS485 można podłączyć standardowo 32 urządzenia, master natomiast, może ich adresować np kilka tysięcy.
    W 1-Wire istnieje i master jest w stanie zaadresować ok 7.20E16 adresów, jak myślisz, da się tyle urządzeń podłączyć do magistrali?

    wintex napisał:
    1 Wire jest stosowany na odległości
    do 25m to istotne ograniczenie

    300m.

    wintex napisał:
    Samo napięcie na linii nie pochodzi 1 Wire .

    Możesz rozwinąć wypowiedź? Napięcie czego nie pochodzi z 1-Wire?
  • Poziom 12  
    Napięcie podaje sie na linię programowo z mikroprocesora
    przez tranzystor (otwarty dren) wtedy magistrala jest
    w stanie wysokim czyli w stanie bezczynnym.

    Dodano po 5 [minuty]:

    Lchucki a co myślisz o RS232 halfduplex

    Dodano po 8 [minuty]:

    Potrzebna jest komunikacja tylko w jedną stronę .
  • Poziom 31  
    wintex napisał:
    Napięcie podaje sie na linię programowo z mikroprocesora
    przez tranzystor (otwarty dren) wtedy magistrala jest
    w stanie wysokim czyli w stanie bezczynnym.

    Niby tak działa 1-Wire?

    wintex napisał:
    Lchucki a co myślisz o RS232 halfduplex

    Wymaga mikrokontrolera w unifonie, teraz policz sobie, ile prądu potrzeba aby zasilić 255 unifonów.
  • Poziom 12  
    Układ jest taki :
    klawiatura
    wyświetlacz
    mikrokontroler-wysyła 1 bajt
    linia
    unifon -układy 40103 i 4093

    Dodano po 2 [minuty]:

    Myślę teraz jak przesłać 1 bajt.

    Dodano po 2 [minuty]:

    W 1wire slave może zgłaszać się po numerze lokalu
    zaprogramowanym w unifonie za pomocą zworek.
  • Poziom 31  
    wintex napisał:
    Myślę teraz jak przesłać 1 bajt.

    W kasecie/centralce masz uC, nie trzeba myśleć, poza tym, jak to zrobić aby jednocześnie zasilić unifony w czasie transmisji.
    Pomyśl raczej, jak w unifonie na
    wintex napisał:
    nifon -układy 40103 i 4093

    odebrać ten bajt?

    wintex napisał:
    W 1wire slave może zgłaszać się po numerze lokalu
    zaprogramowanym w unifonie za pomocą zworek.

    Po co więc 1-Wire jak nie korzystasz z jego atutu, jakim są unikane ID?
    No i jak rozwiążesz problem transmisji cyfrowej 1-Wire i równocześnie sygnału audio?
    Zapomiełem wspomnieć o układzie antylokalnym, który spędza sen z powiek konstruktorom domofonów.


    Wynajdujesz koło na nowo. System jest prosty, tani, pobiera mało prądu (unifony).
    Zanim zaczniesz wymyślać koło, zapoznaj się z budową systemów "cyfrowych". Wiesz jak fizycznie jest to zrealizowane? Wątpię.

    Jeśli już chcesz cos przełomowego to zrób cyfrową transmisję dźwięku. Pomyślisz, popróbujesz i dojdziesz do..... do VoIP :-) Teraz pytanie, kto kupi system, w którym unifon kosztuje 200zł a nie 30? Czy dodatkowe koszty switch-ów PoE będą do zaakceptowania? To wyjdzie pewnie jakieś 100zł za port.
    To może ISDN po styku S? Zobacz ile kosztują telefony systemowe i karty do PABX i pewnie zrezygnujesz z opcji ok 500zł za unifon.
  • Poziom 12  
    Moja propozycja jest taka.
    Wpisuję do jakiejś zmiennej kod wybrany z klawiatury
    np.18 i wysyłam 00010010 (postać binarna liczby 18)
    do unifonu.

    Dodano po 3 [minuty]:

    Unikalny numer to numer zakodowany na 40103.

    Dodano po 4 [minuty]:

    W unifonie są dwa układy po 1.2 zł i dwa tranzystory
    mikrofon i słuchawka . To chyba tak drogo nie kosztuje
  • Poziom 31  
    wintex napisał:
    W unifonie są dwa układy po 1.2 zł i dwa tranzystory

    Gdzie więc ten 1-Wire?

    wintex napisał:
    np.18 i wysyłam 00010010 (postać binarna liczby 18)
    do unifonu.

    W jaki sposób?
    Prąd, napięcie?
  • Poziom 12  
    Programowo port konfigurujesz na magistralę 1 wire
    i z tego portu wysyłasz dane z klawiatury, np. 18 binarnie .
    To samo ustawiasz w unifonie za pomocą zworek.
    Przykład : wagi bitów 1,2,4,8,16,32,64,128.Razem=255
    2 + 16 = 18
    Jeżeli z klawiatury wybierzesz 18 to mikrokontroler wyśle 18
    do wszystkich unifonów w sieci ale zadziała tylko ten który ma
    założone zworki na 2 i 16.

    Dodano po 4 [minuty]:

    Mgistrala jest podciągnięta Pull-up do napięcia zasilania przez rezystor.
    Jak myślisz co się stanie po podniesieniu słuchawki.
  • Poziom 31  
    wintex napisał:
    Jeżeli z klawiatury wybierzesz 18 to mikrokontroler wyśle 18
    do wszystkich unifonów w sieci

    Fizycznie jak wyśle? Narysuj, choćby odręcznie, oscylogram sygnału na linii unifonu.

    wintex napisał:
    Mgistrala jest podciągnięta Pull-up do napięcia zasilania przez rezystor.
    Jak myślisz co się stanie po podniesieniu słuchawki.

    Nie odnosisz się do wypowiedzi przez cytowanie, jak ja to robię, i nie wiadomo o czym piszesz, trzeba się domyślać.
    Jaki jest ten pull-up?
    Jaki prąd popłynie po podniesieniu słuchawki?
  • Poziom 12  
    Jeżeli procesor wykryje połączenie wyśle sygnał dzwonienia.
    Po podniesieniu słuchawki napięcie spadnie ponieważ rezystor Pull-up
    (podciągnięcie do + zasilania ) to 4,7k , procesor mierzy to napięcie i po
    wykryciu spadku czyli logicznego 0 wystawia na port logiczną 1 co powoduje
    wysterowanie tranzystora , który poda napięcie potrzebne do przeprowadzenia
    rozmowy.
  • Poziom 31  
    wintex napisał:
    wyśle sygnał dzwonienia.

    Jaki to sygnał? Amplituda, prąd, częstotliwość, kształt?

    wintex napisał:
    Po podniesieniu słuchawki napięcie spadnie ponieważ rezystor Pull-up
    (podciągnięcie do + zasilania ) to 4,7k ,

    Do jakiej wartości spadnie? W związku z tym ile prądu pobiera unifon?

    wintex napisał:
    procesor mierzy to napięcie i po
    wykryciu spadku czyli logicznego 0 wystawia na port logiczną 1 co powoduje
    wysterowanie tranzystora , który poda napięcie potrzebne do przeprowadzenia
    rozmowy.

    Narysuj schemat.
  • Poziom 12  
    Jak pisałem nie jestem specjalistą od domofonów. Firmy ,które produkują
    te rzeczy trzymają to w tajemnicy i nigdzie się nie dowiesz jak to robią.
    Temat na elektrodzie pobudził mnie do myślenia i z szczątkowych informacji
    i pomiaru kolegi za pomocą oscyloskopu przebiegu na linii doszedłem do takiego
    wniosku. Sekwencja sytuacji na linii wskazuje że to tak działa .Zrobienie schematu
    jak i napisanie programu (myślę ,że ATmega 8 wystarczy) nie jest problemem ale
    wymaga czasu.
  • Poziom 31  
    wintex napisał:
    Firmy ,które produkują
    te rzeczy trzymają to w tajemnicy i nigdzie się nie dowiesz jak to robią.

    Dowiesz, wystarczy poszukać, nawet na Elektrodzie znajdziesz schematy unifonów i centralek choćby popularnego PROEL'a.

    wintex napisał:
    z szczątkowych informacji
    i pomiaru kolegi za pomocą oscyloskopu przebiegu na linii doszedłem do takiego
    wniosku.

    Przeanalizuj schematy i dojdziesz do innych wniosków.

    wintex napisał:
    myślę ,że ATmega 8 wystarczy

    W centralkach używane są Mega128, STM32F103 z nawet 512kB RAM, dawniej 89C55. O Mega8 zapomnij, na dzień dobry za mało FLASH, może do kilku mieszkań wystarczy ale po co się męczyć kilka razy, robi się raz a dobrze, na 256 lokali, multi kasety, USB, RFID i inne bajery. Oczywiście, bardzo często, potrzeba zewnętrznego EEPROM. Nie dlatego, że ta w uC nie wystarczy ale aby łatwo, w razie awarii kasety, było ją ożywić, przekładając do nowej EEPROM.

    To:
    Protokół komunikacyjny domofonów miwi urmet, typ BASIC
    działa na STM32F103C8 ale prawie cały FLASH jest zajęty i trzeba by dać uC z 128kB FLASH. Jak by zacząć kombinować z dodatkowymi kasetami, komunikacja miedzy nimi itp to pewnie 256KB by potrzeba, jak dodać ETH to od razu 512 trzeba by dać.
  • Poziom 12  
    Z praktyki wiem że 8 kb powinno wystarczyć . Napisałem
    dużo programów na mikrokontrolery i wszystko zależy
    od optymalizacji kodu i także języka w jakim piszesz.

    Dodano po 3 [minuty]:

    To na zdjęciu jest z protokółem RFID