Otwórz bramę, furtkę lub drzwi przy użyciu Smartfona i Raspberry PI.

Tym razem zaprezentuję w jaki sposób można przekształcić Smartfon w „pilota” do otwierania furki/bramy lub drzwi z wykorzystaniem Raspberry PI.

Aby to zrealizować potrzebne są:

  1. Smartfon z Androidem (min. 3.1.x) lub iPhone z iOS (min. 6.1)
  2. Dowolne Raspberry PI, ja użyłem wersji B+ http://botland.com.pl/moduly-i-zestawy-raspberry-pi-a-i-b/2543-raspberry-pi-model-bplus-512mb-ram.html
  3. Karta SD minimum 3GB
  4. Moduł przekaźnikowy. Ja użyłem „YwRobot 4 relay”
  5. Przewody połączeniowe
  6. Płytka stykowa
  7. Trzy tranzystory BC547

Zaczynamy.

Krok 1.
Na początku podłączamy moduł przekaźnikowy do Raspberry. Oprogramowanie, którym się posłużę domyślnie skonfigurowane jest do obsługi 3 przekaźników, ale jeżeli mamy np. tylko jeden to również możemy go podłączyć, a pozostałe których nie mamy można pominąć. Przekaźniki można podłączyć do elektro-zaczepu otwierającego furkę/drzwi lub do sterownika otwierania i zamykania bramy. Funkcje przekaźników można będzie zmienić na  cloud.supla.org, tak samo jak czas załączenia poszczególnego przekaźnika.

Schemat podłączenia Raspberry PI z modułem przekaźnikowym

schemat

Specyfikacja pinów Raspberry ( zapożyczona z http://raspi.tv/2014/rpi-gpio-quick-reference-updated-for-raspberry-pi-b )

Raspberry-Pi-GPIO-pinouts-small

Połączenia na płytce stykowej

polaczenia_male

polaczenia-przewody_male

Przykładowe schematy podłączenia przekaźników do elektrozaczepu oraz wybranych sterowników bram

schemat-sterowniki_male

Krok 2.
Aby wszystko mogło działać, potrzebujemy założyć bezpłatne konto na https://cloud.supla.org/account/create
Po zarejestrowaniu i zalogowaniu się, musimy odczytać ustawienia lokalizacji, które będą potrzebne w kroku 3 i ustawienia identyfikatora dostępu potrzebne w kroku 4.

Krok 3.

Teraz musimy przygotować kartę SD. (Przykład zrealizowany przy użyciu komputera PC z Windows 7)

diskimager1a

  • W polu „Plik obrazu” wskazujemy pobrany i rozpakowany plik. Następnie wybieramy urządzenie (Litera dysku oznaczająca kartę SD). Klikamy „Zapisz”

diskimager2a

  • Teraz należy wysunąć kartę przy pomocy narzędzia „Bezpieczne usuwanie sprzętu i wysuwania nośników”, a następnie fizycznie wyjąć kartę z czytnika i ponownie ją do niego włożyć

wysuwanie karty

  • Po ponownym włożeniu karty do czytnika otwieramy dysk oznaczający partycje „boot” na karcie SD

boot1a

  • Otwieramy plik location.txt gdzie wprowadzamy dane lokalizacji odczytane z https://cloud.supla.org . W pliku last_state.txt będziemy mogli odczytać ostatni stan połączenia. Jeżeli, np. błędnie wpiszemy hasło to właśnie w tym pliku się o tym dowiemy

 

cloudnotepad_a_male

 

  • Wysuwamy kartę przy pomocy narzędzia „Bezpieczne usuwanie sprzętu i wysuwania nośników”, a następnie fizycznie wyjmujemy ją z czytnika i wsuwamy do gniazda karty SD w Raspberry PI
  • Podłączamy Raspberry PI do sieci LAN i włączamy urządzenie. (Można również przekonfigurować Malinę tak aby łączyła się z siecią przez WiFi)
  • Po poprawnym uruchomieniu Raspberry powinno się pojawić na liście urządzeń w cloud.supla.org

cloud_male

Krok 4.

Konfiguracja smartfona.
W pierwszej kolejności należy pobrać aplikację ze sklepu AppStore lub Google Play. Aplikacje są bezpłatne.

iOS: https://itunes.apple.com/us/app/supla/id996384706?l=en&ls=1&mt=8
Android: https://play.google.com/store/apps/details?id=org.supla.android

Instalujemy i uruchamiamy aplikację.
Tuż po uruchomieniu powinno się od razu pojawić okno ustawień gdzie należy wprowadzić ustawienia odczytane z cloud.supla.org

 

Ustawienia smartfona

 

Gotowe! 
Dodatkowe informacje:
Konfiguracja: /etc/supla-dev/supla.cfg
Przekaźniki: GPIO27, GPIO22, GPIO17
Porty wejścia (np. czujniki otwarcia): GPIO24, GPIO23, GPIO18. Ustawiając stan wysoki na poszczególnym porcie możemy informować system, że np. drzwi/furtka/brama są zamknięte.
Czujniki temperatury 1-WIRE: DS18B20

Przykład podłączenia czujnika temperatury:

czujnik

Po podłączeniu czujnika wystarczy ponownie uruchomić Raspberry aby został wykryty i pojawił się w Smartfonie. Można podłączyć równolegle kilka czujników temperatury na raz.

 

Otwórz bramę, furtkę lub drzwi przy użyciu Smartfona i Raspberry PI., 4.4 out of 5 based on 62 ratings

Oceń post Kategoria: Dom, Elektronika, Raspberry Pi, Tagi: , ,

GD Star Rating
loading...

Komentarzy: 39 + Dodaj komentarz

  1. Mateusz pisze:

    Kiedy dodacie obsługę Arduino? Fajnie by było gdybyście dodali ENC28J60.

  2. pzygmunt pisze:

    Planujemy udostępnić wersję dla Arduino do 29 lutego 2016.
    Będzie obsługa ENC28J60

  3. Anonim pisze:

    Fajne te wasze projekty.

  4. ff pisze:

    Mam coś podobnego, tyle, że oprogramowanie zrobiłem sam.
    Moduły przekźników mam podłączone do i2c przez expander mcp23S17. Steruję nimi przez aplikację www napisaną w php i pythonie. Proste rozwiązanie i niezależne od jakichś chmur i zewnętrznych dostawców. Po prostu na raspim jest serwer www, php i python. Uniwersalny sposób, bo każdy smartfon potrafi wczytać stronę www. Do tego trzeba przekierować odpowiedni port w routerze, żeby mieć dostęp do sterowania z dowolnego miejsca internetu.

    • Tak pisze:

      Mógłbyś opisać bardziej to w jaki sposób sterujesz przez www ?

      • ff pisze:

        Panel do sterowania jest napisany w php. Są tam przyciski wywołujące inne skrypty, tym razem pythona. A te pythonowe skrypty sterują wyjściami ekspandera mcp23S17, ten z kolei modułem przekaźnika, a przekaźniki już tym co jest do nich podłączone.

        • Gosciu pisze:

          Też chciałem rozwiązać to w ten sposób, mam sprawny skrypt napisany w pythonie (działa tak jak powinien, da sie go odpalić z terminala), na RPi śmiga apache2 z php (wyświetla strony, skrypt php też działają) ale problem polega na tym, że gdy strona php chce odwołać się do pliku *.py nic się nie dzieje

          Jakieś pomysły dlaczego? Póki co wszystko rozgrywa się w lokalnej sieci

  5. di pisze:

    Jako projekt edukacyjny jak najbardziej ok, ale do użytku codziennego za drogi w wykonaniu.

    To samo można osiągnąć na esp8266 w cenie 10PLN za moduł plus drugie tyle za przekaźnik (lub optotriak + triak mocy).

  6. Sebastian pisze:

    Dodatkowe tranzystory są zupełnie zbędne, płytka ma wbudowane tranzystory zasilające cewkę i diodę, wystarczy podłączyć piny bezpośrednio pod wyjścia mikrokontrolera. :)

    • pzygmunt pisze:

      Też tak myślałem, ale moja wersja YwRobot z jakiegoś powodu zawsze załącza przekaźnik po podłączeniu GND lub +3.3V do dowolnego z wejść (INx). Dlatego zastosowałem tranzystory.
      Jak ktoś posiada wersję, która nie “zachowuje” się tak jak mój moduł to jak najbardziej może tranzystory pominąć.

  7. Seba pisze:

    Automatyczne otwieranie zamków za pośrednictwem jakiejś scentralizowanej “chmury” to kiepski pomysł. W ten sposób dajemy jej właścicielom nieograniczony dostęp do naszych domów. Oprócz tego mogą oni zbierać mnóstwo informacji o życiu swoich użytkowników. W dodatku ewentualna awaria lub wyłączenie “chmury” spowoduje, że sterowanie przestanie działać. Nie mówiąc już o tym, że wysyłanie informacji do oddalonego o wiele kilometrów serwera tylko po to, żeby odesłał ją do urządzenia znajdującego się parę metrów od użytkownika jest po prostu śmieszne. Lepiej byłoby zastosować komunikację P2P z odpowiednim szyfrowaniem chroniącym przed dostępem osób niepowołanych.

  8. Guzik212 pisze:

    Mi te rozwiązanie bardzo się podoba :)

    Proszę tylko o dodanie do aplikacji wigetów.

    Otwieranie bramy czy odczyt temperatury był by dużo bardziej wygodny z poziomu wigetu niż “odpalanie” aplikacji itp.

  9. Tomasz pisze:

    Ja robię podobnie ale za pomocą openhab ( http://www.openhab.org/ )
    Przede wszystkim nie potrzebuje internetu.
    Pełna kontrola nad transmisją i obsługuje chyba setkę protokół łącznie z kamerami.
    Polecam ich wiki.

    Pozdrawiam Tomasz

  10. wojtek pisze:

    a co się stanie jak w domu kilka razy braknie prądu i raspberry się wyłączy? Nie uwali to systemu plików na SD?

    • Anonim pisze:

      Może wystąpić problem z kartą po którymś twardym resecie dlatego docelowo lepiej stosować np. ESP8266 jako moduł wykonawczy.

  11. Mariusz pisze:

    Ja takie sterowanie robię na ESP8266 po WiFi (taniej – 1,9$). ESP łączy się z serwerem www i sprawdza 1 plik JSON w interwale co 10s. Kolejna zaleta (po taniości) z tego płynąca to że nie korzystam z niezaufanych mi serwisów typu Supla. Ok jeszcze jedna zaleta – ESP8266 będzie pobierać mniej prądu niż raspberry

    Więcej informacji pod adresem
    http://blog.nyl.io/esp8266-led-arduino/

    • pzygmunt pisze:

      Już wcześniej wspominałem. Supla też obsługuje ESP i można ją sobie skopiować wraz z źródłami (tak apropos zaufania).

      • Mariusz pisze:

        Mimo wsparcia w Supli ESP8266, lepszym wyborem jest samemu oprogramować ESP8266 tak jak opisane to jest w linku powyżej przeze mnie podesłanym. I sterowanie “niemal” bezpośrednie.

        Zalety:

        – ESP8266 kosztuje niecałe 2$ (Raspberry ~35$ w zależności od wersji)
        – pobór prądu kilkakrotnie mniejszy
        – brak pośredniczących serwisów typu Supla (korzystam ze swojego serwera www, można użyć darmowych)
        – łatwe łączenie poprzez WiFi modułów ESP
        – ESP są małe i można mieć ich wiele po domu porozmieszczanych

        • pzygmunt pisze:

          Czyli wszystkie zalety jakie ma SUPLA minus:
          – Brak dedykowanej wygodnej i prostej aplikacji niewymagającej otwierania przeglądarki i wpisywania adresu urządzenia.
          – Brak możliwości łączenia w obrębie jednego systemu wielu modułów (bez konieczności dopisania kawałka strony WWW)
          – Brak powiadomień
          – Brak łatwego zarządzania
          – Brak zarządzania uprawnieniami
          – Brak grupowania lokalizacyjnego
          – Brak gotowego firmware-u dla ESP i aplikacji dla RB PI co powoduje, że trzeba przepisywać kawałki kodu

          Wymieniać dalej ?

  12. kuba8174 pisze:

    obraz na Rpi mam wrzucic na czysta karte sd czy z raspbianem?
    ps. po sciagnieciu ok.500mb wyskakuje blad w pobieraniu…

  13. kuba8174 pisze:

    Dlaczego nie mam opcji wlaczania/wylaczania swiatla??
    i jak przekonfigurowac maline na wifi?

  14. Adam pisze:

    Czy mogę zastosować BC337-25 ,bo taki obecnie posiadam

  15. kuba8174 pisze:

    co zrobic, jesli przy ladowaniu w1-therm wyskakuje blad biblioteki “00-00000000000”?

  16. Anonim pisze:

    coś mam nie tak z modułem mam taki sam jak pokazany powyżej lecz nie działa, po podłączeniu zapalają mi się diody na sterowniku i nic nie mogę zmienić telefonem .. płytkę raspberry wykrywa łączy się z telefonem

  17. K pisze:

    A tu jak to zrobić na Arduino i darmowej (dla tej skali projektu) aplikacji BLYNK

    http://100-x-arduino.blogspot.com/2016/06/projekt-nr-2-sterowanie-brama-wjazdowa.html

Dodaj komentarz

(przeczytaj regulamin komentowania)
Info: kod programu możesz umieścić w znacznikach <code>...</code>