Spisu treści:
- Krok 1: Materiały eksploatacyjne
- Krok 2: Okablowanie
- Krok 3: Konfiguracja rzeczy
- Krok 4: Kod i bieganie
- Krok 5: Testowanie
- Krok 6: Montaż
Wideo: Powiadamianie drzwi Raspberry Pi: 6 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:31
Czy zastanawiałeś się kiedyś, czy lub kiedy ludzie wchodzą do drzwi? Czy chcesz dyskretny, tani i szybki sposób na monitorowanie ruchu drzwi… a może mały projekt? Nie szukaj dalej! To proste urządzenie będzie śledzić wibracje emitowane przez przesuwające się drzwi i zgłaszać się do użytkownika za pomocą wiadomości e-mail na określony adres e-mail.
Ten projekt da ci trochę praktyki z Flask, Raspberry Pis, czujnikami GPIO i Mandrill API! Budowanie jest nie tylko przyjemne, ale także bardzo użyteczne. Intruzi strzeżcie się…
Krok 1: Materiały eksploatacyjne
Nadal planujesz zbudować to urządzenie? Oto, czego potrzebujesz:
- Raspberry Pi 3
- Karta micro sd
- 3 przewody żeńsko-żeńskie
- 1 czujnik wibracji
- Bank mocy
- Paski poleceń
Jeśli planujesz zbudować ten projekt dla wielu drzwi, pomnóż każdą dostawę przez liczbę potrzebnych urządzeń.
Jeśli jesteś w trakcie budowania/testowania tego urządzenia, nie jest konieczne posiadanie następujących elementów… jednak na pewno byłoby to bardzo pomocne.
- Monitor komputerowy
- Klawiatura USB
- Zestaw do ładowania micro USB
Krok 2: Okablowanie
Chociaż Raspberry Pi to sprytne urządzenie, które jest dostarczane z wieloma różnymi czujnikami i urządzeniami peryferyjnymi, musimy dodać główny czujnik do okablowania Pi, aby mógł dokonywać potrzebnych pomiarów. Główny czujnik użyty w tym projekcie widać na powyższym zdjęciu – jest to czujnik drgań o wysokiej czułości. Chociaż moglibyśmy użyć płytki stykowej lub innego urządzenia montażowego, aby umieścić ten czujnik i poprowadzić przez niego nasze przewody, po prostu połączyliśmy go przewodami żeńskimi z żeńskimi bezpośrednio do pinów urządzenia Raspberry Pi.
Schemat okablowania można znaleźć powyżej (pochodzący z https://www.piddlerintheroot.com/vibration-sensor/). Po prostu podłącz wszystkie przewody, jak pokazano na tym obrazku, a czujnik drgań powinien być gotowy do pracy. Pamiętaj też, że w końcu będziesz potrzebować zestawu baterii do tego projektu, ale jeśli testujesz, prawdopodobnie pomocne będzie podłączenie urządzenia do gniazdka ściennego.
Krok 3: Konfiguracja rzeczy
Gratulacje! Dotarłeś tak daleko. Idźmy dalej!
Teraz zaczniemy bezpośrednio pracować z Pi. Wszystkie poniższe czynności można wykonać na urządzeniu za pomocą klawiatury i monitora (lub przez SSH, jeśli jest to wygodne).
Istnieje wiele wstępnych ustawień, aby każdy czujnik GPIO działał z Pi i Flask. Cierpliwość jest cnotą. Jest sporo bibliotek Pythona, które musisz najpierw zainstalować. Można to zrobić za pomocą Pip, menedżera bibliotek/pakietów dla Pythona. Aby użyć, wpisz `pip install ` Aby wymienić niektóre potrzebne biblioteki:
- upraszanie
- RPi. GPIO
- kolba
- flask_spokojny
- flask_wtf
- wtformy
- mandryl
Możesz chcieć napić się kawy, czekając na ich instalację - może to zająć trochę czasu.
Teraz, gdy wszystkie biblioteki są zainstalowane, możesz rozpocząć swój projekt Flask. Flask to lekka platforma, która obsługuje strony z urządzenia, na którym działa. W takim przypadku Raspberry Pi staje się serwerem. Całkiem fajnie, co? Tutaj dowiesz się, jak skonfigurować bardzo prostą aplikację Flask. Zrób to przed wykonaniem jakichkolwiek dalszych instrukcji.
Krok 4: Kod i bieganie
Po zakończeniu możesz rozpocząć tworzenie plików projektu. Poniżej zamieściłem wszystkie potrzebne pliki - prawdopodobnie powinieneś jednak przepisać kod, a nie tylko skopiować pliki (DOWIESZ SIĘ WIĘCEJ!).
Oto jak powinny wyglądać organizacje katalogowe:
+-- iotapp | +-- folder aplikacji | +-- szablony | +-- index.html | +-- _init_.py | +-- formularze.py | +-- mcemail.py | +-- trasy.py | +-- iotapp.py | +-- vibes.py
Umieść wszystkie te pliki we właściwej kolejności i powinieneś być w stanie uruchomić swój projekt w mgnieniu oka. Aby następnie uruchomić serwer Flask, należy przejść do katalogu głównego. Powinieneś wtedy wpisać:
$ export FLASK_APP=iotapp.py
$ python -m flask run --host 0.0.0.0
Dzięki temu powinieneś otrzymać komunikat wskazujący, że twój serwer działa i powinieneś być w stanie obsłużyć stronę z urządzenia na inne urządzenie w sieci.
Teraz byłby dobry moment, aby przejrzeć swoje pliki i naprawdę spróbować uzyskać jist, co robi kod. Oczywiście żaden kod nie jest osadzony w kamieniu… można go zaktualizować/zmienić, aby dopasować go do specyficznych potrzeb projektu. Na przykład, od tej chwili, gdy urządzenie wykonuje POST po otrzymaniu danych wejściowych z czujnika wibracji, wysyła znacznik czasu, kiedy dane wejściowe wystąpiły. Jednak serwer nie zapisuje tych danych. Można to zrobić, jeśli użytkownik wolał zachować informacje historyczne i chciał je gdzieś pokazać.
Jedną z rzeczy, które prawdopodobnie zauważysz, jest to, że KOD NIE JEST KOMPLETNY. Ten projekt wykorzystuje zewnętrzne API do wysyłania wiadomości e-mail z powiadomieniami po wibracji (otwarciu drzwi). Aby to skonfigurować, musisz utworzyć konto Mandrill i utworzyć klucz API.
Po zweryfikowaniu domeny wysyłającej i uzyskaniu klucza API możesz umieścić swój klucz w pliku `mcemail.py` (gdzie jest obecny) i dostosować informacje o wysyłaniu (albo zmieniając domyślny parametr w tym samym pliku, albo przekazując w innym e-mailu w pliku `routes.py`. Jeśli chcesz uzyskać więcej dokumentacji na temat Mandrill i jak z niej korzystać, możesz ją znaleźć tutaj.
Krok 5: Testowanie
Zanim zamontujesz urządzenie w swojej stałej lokalizacji, prawdopodobnie dobrym pomysłem jest przetestowanie wszystkiego, co robi. Oto jak prowadzisz te rzeczy.
Urządzenie faktycznie uruchamia dwa programy: `vibes.py` i serwer Flask. Pierwszy powinien być uruchomiony najpierw w tle, a następnie można uruchomić serwer Flask. `vibes.py` to po prostu POST do serwera, a serwer interpretuje żądanie POST.
$ python vibes.py &
$ python -m flask run --host 0.0.0.0
Powinieneś wtedy być w stanie przejść do prawidłowego URI/IP i ustawić adres e-mail, na który chcesz wysyłać wszystkie powiadomienia. Powinieneś dotknąć czujnika wibracji, aby spróbować wysłać kilka testowych wiadomości e-mail i upewnić się, że projekt działa.
Wszystko dobrze wygląda? OK, jesteśmy gotowi do biznesu!
Krok 6: Montaż
Montaż urządzenia jest dość oczywisty. Zasadniczo wystarczy upewnić się, że urządzenie jest podłączone do akumulatora i użyć listew sterujących, aby przymocować urządzenie do drzwi.
Uwaga: urządzenie musi być ustawione z czujnikiem wibracji prostopadle do drzwi, aby czujnik wychwycił ruch drzwi
Po zakończeniu powinieneś być w stanie połączyć się z urządzeniem przez SSH i uruchomić programy, jak wspomniano w poprzednim kroku, i czekać na intruzów!
Aby uzyskać dodatkowe punkty, spróbuj ukryć przewody/urządzenie, aby intruzi nie podejrzewali twojego sprytnego urządzenia!… lub po prostu nie umieszczaj go na szklanych drzwiach. \_(ツ)_/¯
Zalecana:
Łatwe powiadamianie o nieprzeczytanych wiadomościach e-mail: 7 kroków
Łatwe nieprzeczytane powiadomienie e-mail: Cześć wszystkim, witamy w kolejnym Instruktażowym. W obecnej sytuacji pracy z domu stoję przed pewnymi wyzwaniami, ponieważ od czasu do czasu otrzymywałem wiadomości e-mail od mojej firmy. Wtedy pomyślałem o stworzeniu powiadomienia biurkowego, które będzie powiadom mnie o moim
Otwieranie drzwi garażowych za pomocą Raspberry Pi: 5 kroków (ze zdjęciami)
Otwieranie drzwi garażowych za pomocą Raspberry Pi: Steruj silnikiem garażu ze smartfona lub dowolnego urządzenia, które może przeglądać strony internetowe (z AJAX!). Projekt rozpoczął się, ponieważ miałem tylko jeden pilot do garażu. Jak fajnie było kupić drugi? Niewystarczająco. Moim celem była możliwość kontrolowania i monitorowania
Automatyczne światła połączone z monitorowaniem drzwi i drzwi.: 5 kroków
Automatyczne światła połączone z monitorowaniem drzwi i drzwi: Wydaje się, że bardzo trudno jest znaleźć tablicę rozdzielczą w ciemności, ale ten projekt jest naprawdę pomocny w rozwiązaniu tego problemu. Wykonaj poniższe czynności, aby poznać rozwiązanie tego problemu
Powiadamianie o świeżym mięsie: 7 kroków
Powiadamianie o świeżym mięsie: urządzenie do utrzymywania świeżości mięsa. Ten projekt został uruchomiony, ponieważ podczas jednej z moich lekcji miałem wyzwanie, aby rozwiązać problem przy użyciu umiejętności, których nauczyliśmy się na zajęciach. Od razu pomyślałem o czymś, co przydarzyło się mojej rodzinie kilka lat temu. Jedna suma
ESP – zdalne powiadamianie o atmosferze: 8 kroków
ESP - Remote Ambiance Notifier: Prototyp jest oparty na popularnym chipie IOT ESP8266.ESP8266 Jest to tani mikrochip Wi-Fi z pełnym stosem TCP/IP i możliwościami mikrokontrolera, produkowany przez chińskiego producenta Espressif Systems z Szanghaju. Procesor: 32-bitowy L106 RISC