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

Pilot on/off z transmisją Bluetooth

28 Lip 2016 13:01 633 11
  • Poziom 16  
    Witam

    Zastanawiam się nad budową układu służącego do włączania i wyłączania "odbiornika" za pomocą pilota. Transmisja pomiędzy pilotem i sterownikiem musi być zakodowana, tak aby nikt nie skopiował kodu i nie miał dostępu do włączania i wyłączania urządzenia. Odległość transmisji może być np. do 10 metrów.

    Pilot jak i sterownik zasilany baterią.

    Wpadłem na pomysł aby to zrobić na zasadzie komunikacji Bluetooth. Jeden moduł BT w pilocie, a drugi w sterowniku. Wybór wstępny padł na moduł Bluetooth Low-power firmy Microchip RN4020. Moduły sterowane np.: ATmega8. Skoro to ma być zasilane bariami, to muszę zrobić usypianie mikrokontrolera oraz usypianie modułu BT w obydwóch urządzeniach.

    W pilocie wybudzenie następowałoby po naciśnięciu jednego z dwóch przycisków służących do włączania lub wyłączania odbiornika. Po naciśnięciu przycisku, wysyłany jest kod składający się np z 8 znaków.

    W sterowniku procesor wybudzałby moduł BT np. co 3 sekundy na 10ms i jeśli wykryłby, że wysyła dane sparowany z nim moduł z pilota, to odebrałby je i wysterował odbiornik, po czym znów przeszedłby w stan uśpienia.

    Te stany uśpienia są koniecznie ze względu na jak najmniejsze zapotrzebowanie na energię.

    Moduł RN4020 w stanie IDLE (bezczynności) bierze mniej jak 1,5mA, kiedy aktywny jest UART, to 16mA, natomiast w uśpieniu bierze mniej jak 5uA.


    Oczywiście obydwa układu muszą mieć czas na połączenie, więc powiedzmy, że musiałbym przytrzymać przycisk jakieś 3 sekundy.

    Co o takim rozwiązaniu myślicie?
    Może znacie jakieś inne układy znacznie lepiej nadające się do tego celu.

    Jeśli chodzi o nadajniki/odbiorniki radiowe RFM12B, to chyba nie jest najlepszy pomysł, ponieważ nie może być sytuacji, że jakieś zakłócenie załączy układ bez mojej wiedzy.
  • Sklep ElwronSklep Elwron
  • Sklep ElwronSklep Elwron
  • Pomocny post
    Poziom 34  
    RN4020 jest modułem BLE. Komunikacja w tym standardzie przebiega zupełnie inaczej niż w BT2.1 z użyciem popularnego profilu SPP. Wpływa to w znaczący sposób na pobór prądu
    Jedna strona (rozgłaszająca się) może mieć stale zasilane. Mala bateria CR2032 wystarczy na wiele miesięcy ciągłej pracy. "Wybudzanie" tu nie ma sensu. Druga strona (skanująca) pobiera 1000 razy więcej prądu. W praktyce więc z baterii może być zasilana tylko krótko. Wstępnie można przyjąć, że stroną skanującą będzie pilot. Czyli po naciśnięciu przycisku włączane jest zasilanie, moduł BT nawiązuje połączenie, przesyła dane, odbiera potwierdzenie i się usypia.
  • Poziom 16  
    Obawiam się, że sobie nie poradzę z tym układem HCS200. Te układy trzeba jakoś programować dodatkowo.

    Dodano po 8 [minuty]:

    TvWidget To by miało nawet sens. Włączenie pilota powoduje wysłanie danych do sprawdzenia czy sterownik włączył jakiś odbiornik czy też nie i następnie wysłanie komendy do załączenia lub wyłączenia układu. Dobrze rozumuję?


    Czyli moduł w sterowniku byłby cały czas w IDLE i jak tylko nastąpiłoby nawiązanie połączenia z pilotem to wtedy dopiero rozpoczęłaby się komunikacja.
  • Poziom 34  
    MICHAŁ6201 napisał:
    Włączenie pilota powoduje wysłanie danych do sprawdzenia czy sterownik włączył jakiś odbiornik czy też nie i następnie wysłanie komendy do załączenia lub wyłączenia układu.

    Nie rozumiem sensu tego zdania

    MICHAŁ6201 napisał:
    Czyli moduł w sterowniku byłby cały czas w IDLE i jak tylko nastąpiłoby nawiązanie połączenia z pilotem to wtedy dopiero rozpoczęłaby się komunikacja.

    BLE pozwala przesyłać dane w różnych konfiguracjach. Czasem robi się to nawet bez nawiązywania połączenia. Nie wiem co dokładnie chcesz zrealizować. Nie będę więc sugerował jakiegoś konkretnego rozwiązania.
    Jeśli możesz poświęcić w sterowniku około 50uA@3V to moduł BLE może być stale włączony. Będzie on okresowo np. co 1 sek informował o swoim istnieniu. Może też przy okazji wysyłać informacje np. o stanie jakiś wejść/wyjść itp.
    Pamiętaj też, że rolę pilota może pełnić smartfon. W tym przypadku te dodatkowe informacje przesyłane przez sterownik można wyświetlić. Są one dostępne już przed nawiązaniem połączenia.
  • Poziom 16  
    Rozumiem że można parować te dwa moduły czyli pilot i sterownik oraz ustawić niewidoczność dla obcych urządzeń bluetooth?
  • Poziom 34  
    BLE nie ma czegoś takiego jak parowanie.
  • Poziom 16  
    Czytam teraz przewodnik do konfiguracji tych modułów i widzę że można np 2 moduły połączyć ze sobą i będą się one rozpoznawać po adresie MAC.

    Ale czy takie coś się nadaje do roli PILOT - STEROWNIK?

    Dodano po 3 [godziny] 29 [minuty]:

    TvWidget mam prośbę jeszcze do Ciebie.
    Widzę że jesteś zorientowany w temacie.

    Jeśli użyję dwóch modułów RN4020, jeden jako pilot, a drugi jako sterownik, to czy będę mógł bez problemu przesyłać dane pomiędzy nimi jak w zwykłym UART?
  • Poziom 34  
    W RN4020 jest procesor z własnym firmware. Nie ma technicznych przeszkód aby emulował on działanie bezprzewodowego UART. Nie wiem jednak czy akurat taki tryb pracy został przewidziany.
  • Poziom 27  
    MICHAŁ6201 napisał:
    Obawiam się, że sobie nie poradzę z tym układem HCS200. Te układy trzeba jakoś programować dodatkowo.
    To kup gotowy zestaw zdalnego sterowania, za 40zł dostaniesz 2 piloty i odbiornik. W tej cenie kupisz conajwyżej 1 moduł BT.
  • Poziom 34  
    W tym co napisał Szymon jest sporo racji. BT ma sens jeśli chcesz zrealizować coś wykracza poza możliwości technologii stosowanej w klasycznych pilotach. Np. gdy chcesz aby sterownik dokonywał autoryzacji gdy "pilot" pojawi się w jego pobliżu (bez konieczności naciskania przycisku), gdy wymagany jest bardzo wysoki stopień bezpieczeństwa lub konieczna jest sygnalizacja odebrania komendy przez drugą stronę.
  • Poziom 16  
    Po prostu chcialem to potraktować jako sposób na nauczenie sie czegoś nowego. Tak bylo w przypadku zrobienia ukladu - zegarka i datownika z mozliwością ustawiania daty i godziny za pomocą aplikacji,która napisałem na androida i przesylanie nastaw za pomocą komunikacji BT. Program na atmegę napisalem w Bascomie, a aplikację na androida napisałem w app inventor. Udało się:-)
    Teraz chcialem zrobić nowy układ o którym napisałem w tym temacie, ale jak wiadomo BTM222 nie nadaje się do zasilania baterią ze względu na jego prądożerność. Dlatego zacząłem szukać innych rozwiązań. Wiem, że są tego typu gotowe rozwiązania dostępne w sprzedaży i gdybym chciał kupić, to już dawno kupiłbym.
    Faktycznie byłoby fajnie zrobić jakiś układ sterownika i pilota z bajerami, ale traktuję to czysto edukacyjnie i jak się uda, to fajnie, a jak nie to i tak zawsze naucze się czegoś nowego i coś w glowie zostanie :-)
    Chcialem się od Was dowiedzieć czy w ogóle tego typu układ nadaje się do takich rozwiązań.