piątek, 7 kwietnia 2017

Bezprzewodowy przekaźnik 433MHz - cd...

Mały PIC i duże COŚ - mikroprocesor może więcej

 


Chińskie cudeńko za 2$ fascynuje coraz bardziej.
A to za sprawą zamontowanego w nim procesora PIC12f629 firmy MICROCHIP.
Jak już wspominałem - nie ma szans by zerknąć na zawarty w nim kod. Jest go zresztą niewiele - cała pamięć programu to 1024 14 bitowych słów. Do tego 64 bajty RAM i 128 b EEPROM.  I wszystko upakowane w 8- nóżkową obudowę.
Po prostu mikroprocesorowy drobiazg.





Nie wiadomo co ma w środku ale z różnych opisów dekoderów zrobionych na tym PICu ( a jest ich sporo na Aliexpresie) wynika, że standardowo oprogramowuje się go na odbiór stałych kodów - 2260, 2262 (nazwy pochodzą od kości z zaimplementowanym rodzajem kodu tj. PT2260, PT2262) i kodów uczących - np. 1527. Co więcej program jest tak napisany że potrafi dekodować sygnały o różnych częstotliwościach (częstotliwość sygnału sterującego ustawia się wartością oporności w oscylatorze - więcej tu>>>)

W poprzednim poście sprawdziłem współdziałanie bezprzewodowego przekaźnika z pilotami ELRO AB440. System  ten działa na stałych kodach programowanych mikroswitchami z  Pulse Length = 320 usek.



Nasz przekaźnik odbierał wszystkie kody z pilota bez problemu.


Niestety urządzenia innych producentów mają zazwyczaj ustawione swoje własne parametry częstotliwości nośnej kodu (czasów impulsów kodujących 0 i 1) przez co nie ma szans by współpracowały one między sobą (opis tu). Toteż nijak nie dało się bezpośrednio połączyć elementów dwu systemów np. bezprzewodowa czujka ruchu z Pulse Length = 410 usek nie była w stanie  wysterować przełącznika systemu ELRO AB440 z Pulse Length = 320 usek. W urządzeniach innych dostawców Pulse Length może się zmieniać od 180 do 980 usek!. Toteż skomunikować ze sobą tak różne czasowo protokoły - bez inteligencji dekodera - się nie da.



Niezbędny do tego jest element pośredniczący np. - moduł Arduino z nadajnikiem i odbiornikiem 433MHz, który w pewnym sensie robi za konwerter systemów kodów.

Ale o ile małe chińskie rączki nie zepsuły czegoś w kodzie to jest duża szansa, że nasz zdalny przekaźnik z procesorową inteligencją potrafi dekodować nie tylko kody systemu ELRO ale wszelkie stałe kody o różnych częstotliwościach a może nawet i kody uczące. Pytanie brzmi:


Szybki test kompatybilności obu elementów ....................





Przekaźnik zaprogramowany został na funkcję z opóźnieniem wyłączenia 15 sek (6 x przycisk). Włączenie czujki PIR spowodowało wygenerowanie kodu, który został zapamiętany przez przekaźnik. I to koniec procedury uczenia przekaźnika kodu wysyłanego przez czujkę.
Przekaźnik pięknie się załącza  przy wzbudzeniu czujki ruchu. Czujka ruchu ustawiona jest tak, że w przypadku detekcji ruchu ponawia wysyłanie sygnału nie częściej niż co 8 sek. Odebranie kodu z czujki w trakcie załączonego przekaźnika powoduje naliczenie czasu opóźnienia od początku - przekaźnik cały czas pozostaje włączony. Brak ruch przez czas dłuższy niż 15 sek powoduje wyłączenie przekaźnika.
Szybko - prosto - tanio!

A tu naumiany kodem czujki kontaktronowej  przekaźnik załącza się każdorazowo na 15 sek po otwarciu drzwi .
I tak kolejne aplikacje z zastosowaniem małego chińskiego układu można mnożyć.....
A wszystko dzięki małemu PICowi.


Tylko po jaką cholerę było uczyć się tego całego Arduino :)


I czy ciąg dalszy ma jeszcze sens kiedy takie rzeczy można kupić po kilka zet z darmową dostawą do domu ?????

7 komentarzy:

  1. Witam,

    bardzo ladnie napisany artykuł,
    mam pytanie, czy robiłeś może probe podłączenia esp8266 z nadajnik 433 MHz oraz odbiornik 433 MHz w celu zbudowania "bramki" do sterowania gniazdkami, oraz odczytywaniem z PIR(433) i czujek okiennych (433)

    bylbym wdzieczny za informacje

    OdpowiedzUsuń
  2. Tak
    Tu opis współpracy ESP z bibliotekami dla modułów 433MHz - wszystko działa
    http://100-x-arduino.blogspot.com/2016/07/esp8266-na-powaznie-cz-2.html
    Miałem gdzieś nawet zestawiony taki model testowy. Jeśli odnajdę szczegóły - podrzucę

    OdpowiedzUsuń
  3. Ten komentarz został usunięty przez autora.

    OdpowiedzUsuń
  4. witam,
    bardzo dziekuje za odpowiedz, to dobrze swiadczy o Twoim blogu :)
    widac ze zyje
    bylo by super gdyby udalo sie znalezc
    jeszcze jedno pytanie, jak zmieniłeś możliwość odbioru innego nadajnika w omawianym przekażniku?

    OdpowiedzUsuń
  5. https://pastebin.com/djCrp7Ez
    tu masz mój projekt BRAMA który opisuję na blogu zapakowany tylko do ESP - z procedurami nadawania i odbioru RF 433MHz na porcie 2 i 3. Może Ci w czymś pomoże dla zrobienia swojej bramki. Jak będziesz miał problemy -pytaj
    Ten odbiornik ma pamięć 50 kodów więc kolejny nadajnik dodaję identycznie jak wcześniejsze ustawiając mu funkcję działania jakiej potrzebuje. (każdy kod może mieć inną funkcję) Ja znudzi się dodawanie zawsze można wszystko wykasować i zaprogramować od nowa

    OdpowiedzUsuń
  6. Witam czyli czujki wykrywaja ruch w pomieszczeniu i zalaczaja pompe a da sie zgrac ze soba 3 czujki bym postawil w lazienkach i kuchni. No dobra a nie da sie tak zrobic tak jak ten sterownik inseltom cwu 01 ktory reagowalby na odkrecenie kranu z ciepla woda bo wiesz jak ktos wchodzi di lazienki lub do kuchni to nie znaczy ze bedzie korzystal z cieplej wody co bys zaproponowal chetnie bym kupil gotowy taki zestaw ktory raz na zawsze wyeliminowalby problem z ta cyrkulacja ale wiadomonie za 200 zl . Odezwij sie na meila morty3@o2.pl a sie dogadamy
    Pozdrawiam Grzegorz

    OdpowiedzUsuń