Съдържание:

IOT CA2 Secure Smart Home/Room: 8 стъпки
IOT CA2 Secure Smart Home/Room: 8 стъпки

Видео: IOT CA2 Secure Smart Home/Room: 8 стъпки

Видео: IOT CA2 Secure Smart Home/Room: 8 стъпки
Видео: 12 COOL Smart Home Gadgets That Are Worth Buying 2024, Ноември
Anonim
Защитен интелигентен дом/стая IOT CA2
Защитен интелигентен дом/стая IOT CA2
Защитен интелигентен дом/стая IOT CA2
Защитен интелигентен дом/стая IOT CA2

Съдържание

1 Преглед на Smart Secure Home

2 Хардуерни изисквания + Настройка

3 Софтуерни изисквания + Настройка

4 Регистрирайте raspberrypi като нещо

5 Създайте кофа S3

6 Настройка на DynamoDB + Правила

7 Очакван резултат

8 кода (от Pastebin)

9 Препратки

Общ преглед

Добре дошли! Този проект на Raspberry Pi е система за управление на „интелигентен дом“, с определени функции за сигурност. Проектът може да измерва различни стойности като температура и светлина. Разделът за сигурност се състои от зумер, система за скенер на карти (упълномощава карта), вътрешна и външна камера, както и система за SMS предупреждение. Следните инструкции ще обхващат настройката на целия проект.

По принцип имаме светлинен диоден резистор и сензор DHT11, за да получим температурата, както и светлинните стойности. След това стойностите ще бъдат публикувани в „умна стая/сензори/стойности“и ще има абонамент за темата, за да се провери дали стойностите се публикуват. След като стойностите бъдат публикувани, стойностите също ще бъдат изпратени в нашата таблица DynamoDB. Съхраняваните в DynamoDB стойности могат да бъдат извлечени и нанесени в графика, която показва стойности в реално време в нашия уеб интерфейс. (Светлинна графика) Освен че използва сензорите за получаване на стойности, за да начертае нашата графика за целите на анализа, нашият сензор dht11 се използва и като потенциален „пожарен“детектор. Когато достигне определена температура, която може да е пожар, имаме скрипт, наречен PublishHeat.py, който ще публикува температурата в тема „интелигентна стая/сензор/пожар“. тема и да светне LED индикатор, който показва, че може да има потенциален пожар. Алармата също ще се включи, както и SMS, за да предупреди собственика на дома, когато може да има потенциален пожар.

За да влезе в дома/стаята, потребителят ще трябва да докосне картата си в RFID скенера. Ако подслушваната карта е неправилна, алармата ще звучи, докато не бъде докосната карта с правилните идентификационни данни. Освен това, когато се докосне неправилна карта, камерата за наблюдение отвън ще направи снимка на потребителя, докоснал картата, и ще качи снимката в кофата S3. Собственикът на дома също ще получи SMS, в който се посочва, че някой се е опитал да влезе в дома му. В стаята има и LED индикатор отвън, който да се маркира, ако вратата е отключена/заключена. Когато вратата е заключена, жълтият светодиод свети. При отключване зеленият светодиод ще светне. Когато бъде докосната оторизирана карта, вратата ще бъде отключена за 15 секунди и със светещ зелен светодиод, след което ще бъде върната в отключен режим със запален жълт светодиод.

Потребителите могат да преглеждат данните, събрани чрез табло за управление в Node-Red, което показва текущите измервателни стойности в допълнение към графично представяне на манометър и историческа графика. Таблото за управление включва и допълнителни функции като часовник, който показва текущите данни и час и превключва за дистанционно управление на различни електрически уреди, които са представени като светодиоди и зумер.

И накрая, имаме и функция за телеграм бот. Ботът за телеграма може дистанционно да прави снимки на всичко, което се случва в стаята, и да го съхранява в кофата S3. Тези снимки ще бъдат обозначени с вътрешна папка, наречена „Homed/User“Телеграмният бот ще може да управлява дистанционно LED светлината в стаята.

Стъпка 1: Изисквания към хардуера + Настройка

Хардуерни изисквания + настройка
Хардуерни изисквания + настройка
Хардуерни изисквания + настройка
Хардуерни изисквания + настройка

Свържете следните компоненти с вашия 2 малинов пис, както е показано на диаграмите за пържене по -горе.

2 x Raspberry Pi

3 x Платка

1 x MCP3008 ADC

1 x DhT 11 сензор

1 x LDR

1 x RFID/NFC MFRC522 четец на карти

4 x LED

1 x LCD екран

3 x 10k резистор

4 x 220/330 резистор

1 x Бутон

1 x зумер

34 x мъжки към мъжки кабели

11 x мъжки към женски кабели

Стъпка 2: Софтуерни изисквания + настройка

Софтуерни изисквания + настройка
Софтуерни изисквания + настройка
Софтуерни изисквания + настройка
Софтуерни изисквания + настройка
Софтуерни изисквания + настройка
Софтуерни изисквания + настройка

Въведете следните команди във вашия малинов pi терминал, за да се уверите, че са инсталирани.

Ако някой от следните софтуери вече е изтеглен във вашия pi, sudo pip install (Име на софтуера) --upgrade ще свърши работа, като го актуализира.

- sudo pip инсталирате gevent

- колба за инсталиране на sudo pip

- sudo pip инсталирате 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 инсталирайте boto3

- sudo pip инсталирайте botocore

- sudo pip install numpy

- cd ~

git clone

cd ~/SPI-Py

sudo python setup.py install"

- cd ~

git клонинг

cd ~/MFRC522-питон

sudo python setup.py install"

- sudo nano /boot/config.txt, проверете дали линии device_tree_param = spi = on

dtoverlay = spi-bcm2835 са вътре, иначе добавете.

Стъпка 3: Регистриране на нещо

Регистриране на нещо
Регистриране на нещо
Регистриране на нещо
Регистриране на нещо
Регистриране на нещо
Регистриране на нещо
Регистриране на нещо
Регистриране на нещо

а) Първо отидете до IoT Core в уебсайта на AWS, като щракнете върху услуги, след това IoT Core.

б) В лентата за навигация под управление изберете неща и изберете регистрирайте нещо.

в) Изберете Създаване на едно нещо.

г) Въведете име за вашето нещо, например MyRaspberryPi2. Оставете останалите полета по техните стойности по подразбиране. Щракнете върху следващия в долната част на страницата.

д) Щракнете върху създаване на сертификат. Изтеглете и четирите файла. За основния CA файл, изтеглете Amazon Root CA 1 и го запишете в бележник.

е) След като приключите, преместете четирите файла в директория в raspberry pi.

ж) Щракнете върху активиране.

з) След като кликнете върху политиката за прикачване, ще бъдете пренасочени към следната страница. Щракнете върху регистрация, политиката ще бъде създадена по -късно.

i) На таблото за управление на iot преминете към политики в секцията за защита. Щракнете върху създаване на политика.

й) Въведете име за вашата политика, за този пример то ще бъде MyRaspberryPiSecurityPolicy и въведете следното под Add statement. След това щракнете върху Създаване.

к) На таблото за управление на iot отидете до сертификатите в защитена секция. Изберете сертификата, който сте създали по -рано, и щракнете върху политиката за прикачване от падащото меню „Действия“. Прикачете правилата, които сте създали по -рано.

l) Изберете отново сертификата, който сте създали по -рано, и щракнете върху прикачи нещо. Прикачете правилата, които сте създали по -рано. Прикрепете нещо, което сте създали преди.

Стъпка 4: Създаване на кофа S3

Създаване на кофа S3
Създаване на кофа S3
Създаване на кофа S3
Създаване на кофа S3
Създаване на кофа S3
Създаване на кофа S3
Създаване на кофа S3
Създаване на кофа S3

а) Ще започнем с използването на функцията за търсене в конзолата за управление на AWS и ще търсим „s3“.

б) Щракнете върху създаване на кофа.

в) Въведете име за кофата. За този пример ще използваме името „sp-p1703263“. Ще изберем региона „US EAST (N. VIRGINIA)“, който е us-east-1. След като направите това, кликнете върху Създаване.

г) Новата създадена кофа ще се появи в таблото за управление.

Стъпка 5: Създаване на DynamoDB таблица и задаване на правила

Създаване на DynamoDB таблица и задаване на правила
Създаване на DynamoDB таблица и задаване на правила
Създаване на DynamoDB таблица и задаване на правила
Създаване на DynamoDB таблица и задаване на правила
Създаване на DynamoDB таблица и задаване на правила
Създаване на DynamoDB таблица и задаване на правила
Създаване на DynamoDB таблица и задаване на правила
Създаване на DynamoDB таблица и задаване на правила

а) Първо отидете до услугите на AWS, като щракнете върху

услуги, след това DynamoDB. Щракнете върху създаване на таблица.

б) Въведете името на таблицата „iotdata“и първичния ключ „deviceid“с ключ за сортиране „datetimeid“, след което щракнете върху създаване в долната част на страницата.

в) След това се върнете към страницата на IoT Core. Щракнете върху Действие, след това върху създаване на ново правило.

г) Създайте правило с името „MyDynamoDBRule“. Под темата за заявка за правило въведете „сензори/светлина“.

д) В секцията Задаване на едно или повече действия щракнете върху добавяне на действие, щракнете върху „разделяне на съобщението в няколко колони на таблица от база данни“. Щракнете върху действие за конфигуриране. Под името на таблицата изберете iotdata. Под името на ролята на IAM изберете създадената от вас роля, която е „dynamodb_role“. Щракнете върху добавяне на действие, след което създайте правило.

е) Щракнете върху създаване на правило.

Стъпка 6: Очакван резултат

Очакван резултат
Очакван резултат
Очакван резултат
Очакван резултат

На открито

за pi, представляващи външната част на стаята, ще се изпълняват скриптовете heatdetector.py и AccessDoor.py. Ако неправилна карта докосне RFID скенера, алармата ще се включи, като жълтата LED светлина все още свети. На телефона на собственика ще бъде изпратен SMS, за да уведоми за евентуално проникване. Алармата също ще звучи. Ще бъде направена и снимка, която незабавно ще бъде качена в кофата S3. Ако подслушваната карта е разрешена, зеленият светодиод ще светне и потребителят може да влезе. Вратата ще се заключи отново след 15 секунди (зеленият светодиод ще изгасне и жълтият светодиод ще светне отново). Ако температурата в помещението/дома стане твърде висока (До температура, която считаме за потенциално запалена в дома/стаята), ще изпратим SMS сигнал до собственика на дома. Алармата също ще звучи, когато червеният светодиод отвън свети.

На закрито

за пи, представляващи вътрешността на стаята, ще се изпълняват скриптовете публикацииHeat.py, server.py, pubsub.py, telegrambot.py. Pubsub.py ще съхранява стойностите в реално време в DynamoDB. когато server.py се изпълнява, въведете ip адреса на rpi: 5000 в браузъра, ще бъдете насочени към нашия уеб интерфейс. Имаме графика, която показва стойностите на светлината в реално време, получени от нашите сензори в pubsub.py в DynamoDB. В допълнение, историческите стойности на светлината също ще бъдат показани в нашия уеб интерфейс. publishedHeat.py ще публикува температурни стойности на външната платка за целите на пожарните сензори. telegrambot.py ще позволи на потребителя да контролира дистанционно включването/изключването на LED светлината в стаята/дома, както и да направи снимка на случващото се вътре и да качи снимката в кофата S3.

За по -добра визуализация на това как трябва да изглежда очакваният резултат:

Стъпка 7: Изходни кодове (Pastebin)

Изходни кодове (Pastebin)
Изходни кодове (Pastebin)

Щракнете върху връзката. Състои се от всички необходими изходни кодове:

Стъпка 8: Препратки

Препратки
Препратки

Iotguider. (2019). Изпратете SMS от Raspberry Pi с помощта на Python. [онлайн] Достъпно на: https://iotguider.in/raspberrypi/send-sms-from-raspberry-pi-python/ [Посетен на 21 август 2019 г.].

Препоръчано: