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



Teraz jest 5 gru 2024, o 01:42


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: 27315
Lokalizacja: Szczecin
Pomógł: 1041

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: 27315
Lokalizacja: Szczecin
Pomógł: 1041

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