Spisu treści:
- Krok 1: Wymagania sprzętowe + konfiguracja
- Krok 2: Wymagania dotyczące oprogramowania + konfiguracja
- Krok 3: Rejestracja rzeczy
- Krok 4: Tworzenie zasobnika S3
- Krok 5: Tworzenie tabeli DynamoDB i ustawianie reguł
- Krok 6: Oczekiwany wynik
- Krok 7: Kody źródłowe (Pastebin)
- Krok 8: Referencje
Wideo: Bezpieczny inteligentny dom/pokój IOT CA2: 8 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:30
Spis treści
1 Przegląd inteligentnego bezpiecznego domu
2 Wymagania sprzętowe + Konfiguracja
3 wymagania programowe + konfiguracja
4 Zarejestruj raspberrypi jako rzecz
5 Utwórz wiadro S3
6 Konfiguracja DynamoDB + zasady
7 Oczekiwany wynik
8 kodów (z Pastebina)
9 Referencje
Przegląd
Witam! Ten projekt Raspberry Pi to system zarządzania „inteligentnym domem” z pewnymi funkcjami bezpieczeństwa. Projekt jest w stanie mierzyć różne wartości, takie jak temperatura i światło. Sekcja bezpieczeństwa składa się z brzęczyka, systemu skanera kart (karta upoważnionego), kamery wewnętrznej i zewnętrznej oraz systemu ostrzegania SMS. Poniższe instrukcje obejmują konfigurację całego projektu.
Zasadniczo mamy rezystor diody świetlnej i czujnik DHT11, aby uzyskać zarówno temperaturę, jak i wartości światła. Wartości zostaną następnie opublikowane w „smartroomie/czujnikach/wartościach” i będzie dostępna subskrypcja tematu, aby sprawdzić, czy wartości są publikowane. Po opublikowaniu wartości zostaną one również przesłane do naszej tabeli DynamoDB. Wartości przechowywane w DynamoDB można wyodrębnić i wykreślić na wykresie, który wyświetla wartości w czasie rzeczywistym w naszym interfejsie internetowym. (Wykres świetlny) Oprócz używania czujników do uzyskiwania wartości w celu wykreślenia naszego wykresu w celach analitycznych, nasz czujnik dht11 jest również używany jako potencjalny detektor „pożaru”. Kiedy osiągnie określoną temperaturę, która może być ogniem, mamy skrypt o nazwie publishHeat.py, który opublikuje temperaturę w temacie 'smartroom/sensor/fire', a tablica stykowa, która symbolizuje zewnętrzną część mieszkania, będzie się do tego subskrybować temat i mieć zapaloną diodę LED, aby wskazać, że może wystąpić potencjalny pożar. Włączy się również alarm, a także zostanie wysłany SMS, aby powiadomić właściciela domu o potencjalnym pożarze.
Aby wejść do domu/pokoju, użytkownik będzie musiał zbliżyć swoją kartę do skanera RFID. Jeśli podbita karta jest nieprawidłowa, alarm włączy się do czasu podsłuchania karty z właściwymi danymi uwierzytelniającymi. Ponadto w przypadku stuknięcia nieprawidłowej karty kamera monitorująca na zewnątrz zrobi zdjęcie użytkownika, który stuknął kartę i prześle zdjęcie do zasobnika S3. Właściciel domu otrzyma również SMS z informacją, że ktoś próbował wejść do jego domu. W pomieszczeniu znajduje się również wskaźnik LED na zewnątrz, który oznacza, że drzwi są odblokowane/zamknięte. Gdy drzwi są zamknięte, świeci się żółta dioda LED. Po odblokowaniu zaświeci się zielona dioda LED. Kiedy autoryzowana karta zostanie dotknięta, drzwi zostaną odblokowane na 15 sekund, a zielona dioda LED będzie świecić, a następnie powróci do trybu odblokowanego z zapaloną żółtą diodą LED.
Użytkownicy mogą przeglądać dane zebrane za pośrednictwem pulpitu nawigacyjnego w kolorze Node-Red, który oprócz graficznej reprezentacji miernika i wykresu historycznego pokazuje bieżące wartości pomiarów. Deska rozdzielcza zawiera również dodatkowe funkcje, takie jak zegar wyświetlający bieżące dane i czas oraz przełączniki do zdalnego sterowania różnymi urządzeniami elektrycznymi, które są reprezentowane jako diody LED i brzęczyk.
Na koniec mamy również funkcję bota telegramu. Robot telegramowy jest w stanie zdalnie robić zdjęcia wszystkiego, co dzieje się w pokoju i przechowywać je w wiadrze S3. Te zdjęcia będą oznaczone w folderze o nazwie „Homed/User”. Bot telegramu będzie mógł również zdalnie sterować oświetleniem LED w pokoju.
Krok 1: Wymagania sprzętowe + konfiguracja
Połącz następujące składniki z 2 malinowymi pisakami, jak pokazano na powyższych diagramach.
2 x Raspberry Pi
3 x deska do krojenia chleba
1 x MCP3008 ADC
1 x czujnik DhT 11
1 x LDR
1 x czytnik kart RFID/NFC MFRC522
4 x LED
1 x ekran LCD
Rezystor 3x10k
Rezystor 4x220/330
1 x przycisk
1 x brzęczyk
34 x kable męskie na męskie
11 x kable męskie na żeńskie
Krok 2: Wymagania dotyczące oprogramowania + konfiguracja
Wpisz następujące polecenia w terminalu raspberry pi, aby upewnić się, że są zainstalowane.
Jeśli którekolwiek z poniższych programów jest już pobrane do twojego pi, sudo pip install (nazwa oprogramowania) --upgrade zrobi sztuczkę, aby je zaktualizować.
- sudo pip install gevent
- kolba instalacyjna sudo pip
- sudo pip zainstaluj nexmo
- sudo pip install --upgrade --force-reinstall pip==9.0.3
- sudo pip install AWSIoTPythonSDK --upgrade --disable-pip-version-check
- sudo pip install --upgrade pip
- sudo apt-get install python-dev
- sudo pip zainstaluj boto3
- sudo pip zainstaluj botocore
- sudo pip zainstaluj numpy
- cd ~
klon git
cd ~/SPI-Py
sudo python setup.py zainstalować"
- cd ~
klon git
cd ~/MFRC522-python
sudo python setup.py zainstalować"
- sudo nano /boot/config.txt, sprawdź czy linie device_tree_param=spi=on
dtoverlay=spi-bcm2835 są w środku, w przeciwnym razie dodaj.
Krok 3: Rejestracja rzeczy
a) Najpierw przejdź do IoT Core w witrynie AWS, klikając usługi, a następnie IoT Core.
b) Na pasku nawigacyjnym w ramach zarządzania wybierz rzeczy i wybierz zarejestruj rzecz.
c) Wybierz Utwórz jedną rzecz.
d) Wpisz nazwę swojej rzeczy, na przykład MyRaspberryPi2. W pozostałych polach pozostaw wartości domyślne. Kliknij Dalej na dole strony.
e) Kliknij Utwórz certyfikat. Pobierz wszystkie cztery pliki. W przypadku pliku głównego CA pobierz Amazon Root CA 1 i zapisz go w notatniku.
f) Po zakończeniu przenieś cztery pliki do katalogu w raspberry pi.
g) Kliknij aktywuj.
h) Po kliknięciu na załącz politykę zostaniesz przeniesiony na następną stronę. Kliknij zarejestruj coś, polityka zostanie utworzona później.
i) Na pulpicie nawigacyjnym iot przejdź do zasad w sekcji bezpieczne. Kliknij Utwórz politykę.
j) Wprowadź nazwę swojej polityki, w tym przykładzie będzie to MyRaspberryPiSecurityPolicy i wprowadź następujące informacje w obszarze Dodaj instrukcje. Następnie kliknij Utwórz.
k) Na pulpicie nawigacyjnym iot przejdź do certyfikatów w bezpiecznej sekcji. Wybierz certyfikat, który utworzyłeś wcześniej, i kliknij Dołącz politykę z listy rozwijanej akcji. Dołącz wcześniej utworzoną politykę.
l) Ponownie wybierz certyfikat, który utworzyłeś wcześniej i kliknij załącz. Dołącz wcześniej utworzoną politykę. Dołącz rzecz, którą utworzyłeś wcześniej.
Krok 4: Tworzenie zasobnika S3
a) Zaczniemy od skorzystania z funkcji wyszukiwania w konsoli zarządzania AWS i wyszukania „s3”.
b) Kliknij na utwórz wiadro.
c) Wpisz nazwę wiadra. W tym przykładzie użyjemy nazwy „sp-p1703263”. Będziemy wybierać region „US EAST (N. VIRGINIA)”, który jest us-wschód-1. Po wykonaniu tej czynności kliknij Utwórz.
d) Nowo utworzony zasobnik pojawi się w dashboardzie.
Krok 5: Tworzenie tabeli DynamoDB i ustawianie reguł
a) Najpierw przejdź do usług AWS, klikając
usług, a następnie DynamoDB. Kliknij utwórz tabelę.
b) Wprowadź nazwę tabeli „iotdata” i klucz podstawowy „deviceid” z kluczem sortowania „datetimeid”, a następnie kliknij Utwórz na dole strony.
c) Następnie wróć do strony IoT Core. Kliknij Akt, a następnie kliknij Utwórz nową regułę.
d) Utwórz regułę o nazwie „MyDynamoDBRule”. Pod tematem zapytania o regułę wpisz „czujniki/światło”.
e) W sekcji Ustaw jedną lub więcej akcji kliknij dodaj akcję, kliknij „podziel wiadomość na wiele kolumn tabeli bazy danych”. Kliknij konfiguruj akcję. Pod nazwą tabeli wybierz iotdata. W polu Nazwa roli uprawnień wybierz utworzoną wcześniej rolę, czyli „dynamodb_role”. Kliknij dodaj akcję, a następnie utwórz regułę.
f) Kliknij na utwórz regułę.
Krok 6: Oczekiwany wynik
Na wolnym powietrzu
dla pi reprezentującego zewnętrzną stronę pomieszczenia zostaną uruchomione skrypty heatdetector.py i AccessDoor.py. Jeśli niewłaściwa karta dotknie skanera RFID, alarm wyłączy się, a żółta dioda LED będzie nadal świecić. Wiadomość SMS zostanie wysłana na telefon właściciela domu, aby powiadomić o możliwym włamaniu. Zabrzmi też alarm. Zdjęcie zostanie również zrobione i natychmiast przesłane do S3 Bucket. Jeśli podbita karta jest autoryzowana, zaświeci się zielona dioda LED i użytkownik będzie mógł wejść. Drzwi zostaną ponownie zablokowane po 15 sekundach (zielona dioda LED zgaśnie, a żółta dioda zaświeci się ponownie). Jeśli temperatura w pomieszczeniu/domu stanie się zbyt wysoka (do temperatury, którą uznamy za potencjalnie palącą się w domu/pokoju), wyślemy powiadomienie SMS do właściciela domu. Alarm zostanie również włączony, gdy na zewnątrz zaświeci się czerwona dioda LED.
Wnętrz
dla pi reprezentującego wnętrze pokoju zostaną uruchomione skrypty publishHeat.py, server.py, pubsub.py, telegrambot.py. Pubsub.py będzie przechowywać wartości czasu rzeczywistego w DynamoDB. po uruchomieniu server.py wpisz w przeglądarce adres IP RPI:5000, zostaniesz przekierowany do naszego interfejsu WWW. Mamy wykres, który wyświetla w czasie rzeczywistym wartości światła uzyskane z naszych czujników w pubsub.py do DynamoDB. Ponadto w naszym interfejsie internetowym wyświetlane będą również historyczne wartości światła. publishHeat.py opublikuje wartości temperatury na zewnętrznej płytce stykowej dla celów czujnika pożarowego. telegrambot.py umożliwi użytkownikowi zdalne sterowanie włączaniem/wyłączaniem światła LED w pokoju/domu, a także robienie zdjęcia tego, co dzieje się w środku i wgrywanie zdjęcia do wiaderka S3.
Dla lepszej wizualizacji tego, jak ma wyglądać oczekiwany efekt:
Krok 7: Kody źródłowe (Pastebin)
Kliknij w link. Zawiera wszystkie potrzebne kody źródłowe:
Krok 8: Referencje
Przewodnik po lotach. (2019). Wysyłaj SMS-y z Raspberry Pi za pomocą Pythona. [online] Dostępne pod adresem: https://iotguider.in/raspberrypi/send-sms-from-raspberry-pi-python/ [Dostęp 21 sierpnia 2019].
Zalecana:
Inteligentny dom Raspberry Pi: 5 kroków (ze zdjęciami)
Smart Home od Raspberry Pi: Istnieje już kilka produktów, które czynią Twoje mieszkanie bardziej inteligentnym, ale większość z nich to rozwiązania autorskie. Ale dlaczego potrzebujesz połączenia z Internetem, aby włączyć światło za pomocą smartfona? To był jeden z powodów, dla których zbudowałem własnego Smara
NodeMCU Inteligentny pokój - ESP8266 - Arduino: 6 kroków
NodeMCU Inteligentny pokój | ESP8266 | Arduino: Tworzę serię na YouTube „Jak zautomatyzować swój pokój za pomocą arduino?” a w ramach tej produkcji przynoszę wam jedno z moich najnowszych ulepszeń. Zdecydowałem się na moduł ESP8266 nodemcu WiFi, ponieważ można go było zaprogramować jako
Oparty na IoT inteligentny dom 20 $ kontra Amazon Alexa: 5 kroków
Oparty na IoT Smart Home za 20 $ kontra Amazon Alexa: Witam wszystkich Mam nadzieję, że ten projekt przyniesie ogromną rewolucję w dziedzinie automatyzacji, z punktu widzenia niskiej ceny. Możesz umieścić ten projekt obok dowolnej tablicy rozdzielczej i sterować wszystkimi podłączonymi urządzeniami do tablicy. Ten projekt wykorzystuje e
IoT – Inteligentny dom – EaD INATEL: 10 kroków
IoT - Smart Home - EaD INATEL: Samouczek Projeto Smart HomeEsse można znaleźć w różnych wersjach implementacji ção de uma solução Smart Home zawiera usługi na nuvem dweet.io, utilizaç czujniki do zestawu Linker Mezzanine
Stwórz super konfigurowalny pokój kina domowego i pokój z filmami / grami wideo: 5 kroków
Stwórz super konfigurowalny pokój kina domowego i pokój filmowy / gier wideo: Jak skonfigurować i zaplanować tani, niedrogi, prosty w konfiguracji system kina domowego