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

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 11 lip 2025, o 07:04


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 10 ] 
    Autor Wiadomość
    PostNapisane: 13 kwi 2016, o 10:36 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 05 sie 2013
    Posty: 1154
    Lokalizacja: Lublin / Kraków
    Pomógł: 72

    Witam

    Mam kilka pilotów od tunerów Ferguson. Są w miarę nie duże i chciałem je użyć w projektach.
    Analiza ramki wykazała, że piloty używają kodowania SPACE i że sposób transmisji ramki jest nieco zmienionym standardem SAMSUNG, co widać na poniższym screenie z analizatora:

    FERGUSON
    Obrazek

    SAMSUNG
    Obrazek

    Moim zdaniem, jest to generalnie rodzaj kodowania analogiczny do Samsunga, z niewielką różnicą w czasach trwania impulsu i przerwy, oraz z innym nagłówkiem

    nagłówek:
    Ferguson - nośna przez 9100 us i przerwa 4500 us
    Samsung - nośna przez 4500 us i przerwa 4500 us

    Moim zdaniem zgadza się również format bitowy.
    16 bitów predata
    następnie bajt komendy i zanegowany bajt komendy
    później impuls ptrail.
    Sumaryczna ilość impulsów też się zgadza i wynosi 67

    W związku z tym zmodyfikowałem Greenbookowy kod obsługi pilota Samsung uwzględniając nieco inne czasy impulsów.
    Niestety coś jest nie tak.
    Przy dekodowaniu ramek, pojawiają się (dla tego samego klawisza) różne kody, przy kolejnych wciśnięciach.
    W przypadku użycia pilota Samsung wszystko działa idealnie.
    Zapewne popełniam jakiś błąd przy analizie kodowania pilota Ferguson.
    Głowie się nad tym już od kilku dni i nic mi nie przychodzi do głowy.

    Poniżej ZIP bitmapami i analizą ramek w formie tekstowej.

    Załącznik:
    pilot_problem.zip


    Dodane:
    oczywiście poniżej ustawienia biblioteki
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Załączniki:

    Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.



    Ostatnio edytowano 13 kwi 2016, o 15:57 przez sq8dsr, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 kwi 2016, o 15:30 
    Offline
    Użytkownik

    Dołączył(a): 24 kwi 2013
    Posty: 454
    Pomógł: 30

    Bardziej NEC niż Samsung, była taka fajna biblioteka do tego na forum, ale gdzieś mi link wcięło.


    Autor postu otrzymał pochwałę


    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 kwi 2016, o 16:09 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 11 mar 2014
    Posty: 1475
    Pomógł: 167

    Jak to jest NEC, to jest mnóstwo dostępnych materiałów i bibliotek. Jest to chyba bardziej rozpowszechniony standard w zabawach z robotyką niż RC5. Bo tu poniżej 10zł możesz kupić pilota i odbiornik:
    http://botland.com.pl/odbiorniki-podcze ... ewody.html
    http://botland.com.pl/odbiorniki-podcze ... zowy-.html

    Na forum był wątek o NEC-ach: topic10813.html.
    Ale także w załączonych linkami są informacje o standardzie oraz o bibliotekach.

    --
    Pozdrawiam,
    Robert



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 kwi 2016, o 18:55 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 05 sie 2013
    Posty: 1154
    Lokalizacja: Lublin / Kraków
    Pomógł: 72

    rskup napisał(a):
    Jak to jest NEC, to jest mnóstwo dostępnych materiałów i bibliotek. Jest to chyba bardziej rozpowszechniony standard w zabawach z robotyką niż RC5. Bo tu poniżej 10zł możesz kupić pilota i odbiornik:
    http://botland.com.pl/odbiorniki-podcze ... ewody.html
    http://botland.com.pl/odbiorniki-podcze ... zowy-.html

    Na forum był wątek o NEC-ach: topic10813.html.
    Ale także w załączonych linkami są informacje o standardzie oraz o bibliotekach.

    --
    Pozdrawiam,
    Robert


    Wiesz, bardzo mi zależy żeby zorientować się gdzie popełniam błąd w swojej analizie tego pilota.
    Być może jest to kodowanie NEC. Bardzo wiele firm korzysta z ustalonych norm kodowania, zmieniając tylko długości impulsów/przerw i część charakterystyczną czyli nagłówek. W GB jest bardzo obszerny rozdział poświęcony analizie sterowania w podczerwieni. Również jeśli chodzi o stronę odwrotną, czyli tworzenie własnych standardów, kopiowanie komunikacji (tworzenie kopii pilotów) itd.

    Spróbuje później przetestować kod dla NEC'a. Niestety jeśli zadziała to nadal będę "w kropce" bo nie wiem gdzie mogę popełniać błąd przy analizie.
    Zależy mi na dogłębnym wgryzieniu się w ten temat. :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 kwi 2016, o 20:03 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 11 mar 2014
    Posty: 1475
    Pomógł: 167

    Patrząc na załączone przez Ciebie zależności czasowe, to jest dokładnie standard NEC. Postaraj się zapewnić poniższe zależności:

    Kod:
    NEC Infrared Protocol
    - 9 ms leading pulse burst (16 times the pulse burst length used for a logical data bit)
    - 4.5 ms space
    - 8-bit address for the receiving device
    - 8-bit logical inverse of the address
    - 8-bit command
    - 8-bit logical inverse of the command
    - Final 562.5 µs pulse burst to show end of message transmission

    - Logical '0' – a 562.5 µs pulse burst followed by a 562.5 µs space, with a total transmit time of 1.125 ms
    - Logical '1' – a 562.5 µs pulse burst followed by a 1.6875 ms space, with a total transmit time of 2.25 ms

    Because (address + address inverse) and (command + command inverse) will always contain 8 '0's  and 8 '1's so (8 * 1.125ms) + (8 * 2.25ms) == 27 ms. According to this total time required to transmit the frame is (9 ms + 4.5 ms + 27 ms + 27 ms) = 67.5 ms.

    Repeat Code:
    Repeat code will be issued typically around 40 ms after the pulse burst that signified the end of the message.
    Repeat code will continue to be sent out at 108 ms intervals, until the key is finally released.
    The repeat code consists of the following, in order:
    - 9 ms leading pulse burst
    - 2.25 ms space
    - 562.5 µs pulse burst to mark the end of the space (and hence end of the transmitted repeat code)


    Przyjąłeś zbliżone, ale nie dokładne wartości. Może dlatego coś się Ci rozjeżdża?

    --
    Pozdrawiam,
    Robert


    Autor postu otrzymał pochwałę


    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 15 kwi 2016, o 18:22 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 05 sie 2013
    Posty: 1154
    Lokalizacja: Lublin / Kraków
    Pomógł: 72

    Bazując na standardzie NEC przystosowałem grennbookową bibliotekę JVC. Trzeba było tylko inaczej podejść do obróbki samej ramki po zdekodowaniu.
    Teraz pozostało ogarnąć repetycję klawisza i wprowadzić funkcjonalność virtual toggle bit.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 kwi 2016, o 22:31 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 05 sie 2013
    Posty: 1154
    Lokalizacja: Lublin / Kraków
    Pomógł: 72

    Zastanawiam się jak dobrze podejść do obsługi repetycji w tym standardzie tzn NEC. Czyli nie są powtarzane ramki, tylko po ramce lecą krótkie sekwencje repetycji, tak jak w JVC.
    Mirek w bardzo dokładny sposób opisuje mechanizm wirtualnego bitu toggle, ale na przykładzie SONY, gdzie lecą całe ramki. NEC i JVC są zupełnie inne.
    Poza tym pojawia się problem jak zabezpieczyć się przed błędami.
    Swoją drogą nie sądziłem, że świetlówka może generować tyle zakłóceń w IR. Mam na biurku lampkę ze świetlówką PLS i jest normalnie masakra. Chyba muszę lampkę zmienić przynajmniej do eksperymentów z IR.
    W tak zakłóconym impulsami IR otoczeniu wychodzi słabość standardu takie jak NEC czy JVC, przynajmniej moim zdaniem.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 kwi 2016, o 23:13 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27415
    Lokalizacja: Szczecin
    Pomógł: 1043

    sq8dsr napisał(a):
    NEC i JVC są zupełnie inne.

    Masz rację dlatego w nich nie brałem się za VirtualToggle bit ... choć pewnie można tylko trzeba uwzględniać te ramki repetycji jakoś

    sq8dsr napisał(a):
    Swoją drogą nie sądziłem, że świetlówka może generować tyle zakłóceń w IR. Mam na biurku lampkę ze świetlówką PLS i jest normalnie masakra.

    Jaki odbiornik podczerwieni użyłeś dokładnie? Jak mu zasilanko zapodałeś ? ... pytam bo po moich doświadczeniach to bardzo ważne jeśli chodzi o odporność na te zakłócenia i można je minmalizować mocno

    sq8dsr napisał(a):
    W tak zakłóconym impulsami IR otoczeniu wychodzi słabość standardu takie jak NEC czy JVC, przynajmniej moim zdaniem.

    Też za nimi nie przepadam - w zdecydowanej większości wszystko robię tak żeby działać w RC5 ;) - szerokie impulsy i programowo ładnie się też eliminują babole

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 kwi 2016, o 23:29 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 05 sie 2013
    Posty: 1154
    Lokalizacja: Lublin / Kraków
    Pomógł: 72

    mirekk36 napisał(a):
    Jaki odbiornik podczerwieni użyłeś dokładnie? Jak mu zasilanko zapodałeś ? ... pytam bo po moich doświadczeniach to bardzo ważne jeśli chodzi o odporność na te zakłócenia i można je minmalizować mocno


    ATB 1.04 użyłem. Ale układ na stole mam taki, że ATB stoi dokładnie pod lampką :)
    Podłaczyłem nawet oscyloskop do TSOP'a i ciągle jakiś impuls leci ;)


    mirekk36 napisał(a):
    eż za nimi nie przepadam - w zdecydowanej większości wszystko robię tak żeby działać w RC5 ;) - szerokie impulsy i programowo ładnie się też eliminują babole

    RC-5 spoko działa. Przez to że lecą całe ramki zakłócenia nie przeszkadzają.
    Ale Samsung tez śmiga aż miło.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 kwi 2016, o 23:31 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27415
    Lokalizacja: Szczecin
    Pomógł: 1043

    Cytuj:
    ATB 1.04 użyłem. Ale układ na stole mam taki, że ATB stoi dokładnie pod lampką
    Podłaczyłem nawet oscyloskop do TSOP'a i ciągle jakiś impuls leci

    No to masz jakąś rzeczywiście super lampkę ;) ja miewałem takie efekty ale jak np włączałem świetlówki na suficie w firmie - wtedy była burza impulsów ;)

    ------------------------ [ Dodano po: kilkunastu sekundach ]

    Cytuj:
    RC-5 spoko działa. Przez to że lecą całe ramki zakłócenia nie przeszkadzają.
    Ale Samsung tez śmiga aż miło.

    dokładnie

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    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: 10 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

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


    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:  
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO