Умный замок дома: как сделать своими руками на базе набора raspberry pi
Содержание:
- Обзор моделей Raspberry Pi 2, Pi 3 model B
- Камера Stop-motion
- Domoticz на Raspberry Pi
- Программное окружение
- Как подключить умные устройства
- Преимущества и недостатки Raspberry Pi 3
- Сенсорный экран для приборной панели автомобиля
- Интерфейс SPI
- Первые настройки и подготовка к работе
- Сфера применения Raspberry Pi и «умный» дом
- Raspberry Pi Smart Home Software Options: Getting Started
- Особенности создания «умного» дома с Raspberry Pi
- Основные принципы работы
- MQTT-брокер
- Модули, которые можно использовать
Обзор моделей Raspberry Pi 2, Pi 3 model B
Процессор ARM Cortex-A7 с тактовой частотой 900МГц и 4 ядрами на борту. Объем оперативной памяти довольно солидный даже по современным меркам 1 ГБ. В плату интегрирован графический чипсет — VideoCore IV 3D и звуковой контроллер. Это дает возможность использовать устройство в качестве универсального мультимедийного сервера в системах мультирум.
Raspberry Pi 2 model B
Внешние интерфейсы:
HDMI – главное отличие от предыдущих разработок, заменил собой аналоговый RCA видеовыход. Однако возможность подключения телевизора через 3,5 мм разъем осталась. Необходимо дополнительно приобрести кабель переходник (стоимость около 5 дол).
Multifunctional AV Connection Line Works with Raspberry Pi B+
Еще одним отличием от моделей предыдущего поколения является наличие системных файлов. Так же имеется Lan порт и 4 USB порта, которые могут выдать для питания внешних устройств ток силой 1,2 А каждый. Для этого сам Raspberry Pi должен быть подключен к специальному сетевому адаптеру, который обеспечит силу тока 2 А.
Raspberry Pi 3 model B
По сравнению с 1 и 2 версиями Raspberry Pi 3 не подверглась кардинальной модернизации. Однако эволюция развития основных технических показателей существенна. Основным отличием является высокопроизводительный четырехъядерный 1,2 ГГц процессор ARM Cortex-A53. По заверениям разработчиков создание такого процессора на базе однокристальной платформы Broadcom BCM2837 увеличило его производительность на 50%, и при этом он полностью совмести с предыдущими версиями.
Из основных интерфейсов связи можно отметить:
- Bluetooth 4.1;
- Wi-Fi 802.11n;
- Lan;
- 4 USB;
- HDMI;
- 40ка пиновый GPIO.
Стоимость устройства не изменилась, все те же 35 дол плюс доставка от официального дилера в Великобритании.
Raspberry Pi незаменимое устройство для тех, кто самостоятельно занимается установкой и наладкой систем «Умный дом».
Камера Stop-motion
Дополнительный объектив камеры Pi можно использовать для создания анимаций Stop-motion. Затем достаточно запастись фигурками Lego и можно приступить к съемке полнометражных фильмов с помощью этой техники. Помимо компьютера Pi и камеры, потребуются джамперы, макетная плата и сенсорная кнопка.
Здесь важно отметить, что пользователю не нужно уметь кодить, поскольку все программное обеспечение доступно на официальном сайте проекта Raspberry. Там же представлена и подробная инструкция, как начать снимать с использованием Stop-motion. Вот пример создаваемого таким образом видео:
Вот пример создаваемого таким образом видео:
Domoticz на Raspberry Pi
Рассмотрим минусы:
- Занимает много места (относительно)
- Создает шум
- Большое энергопотребление
- Не стабильное решение в целом (возможен выход компонентов системного блока из строя)
Работу Domoticz на Windows рекомендую не рассматривать. Самая стабильная и отказоустойчивая система сегодня Linux. Идеальный вариант домашнего сервера давно найден – одноплатный компьютер Raspberry Pi, получивший ласковое прозвище «малинка».
Стоимость изделия ~ 3000р. Не покупайте последнюю модификацию. Весь потенциал работой реализовать не получится. Domoticz будет стабильно работать даже на Raspberry Pi 3.
Не рекомендую покупать устройства бывшие в употреблении. Одноплатники часто используют в терминалах оплаты, банкоматах, линзоматах и других ящиках, которые встречают в торговых центрах. Лучше купить новое устройство во избежании проблем в работе.
Программное окружение
Я начал создание своего программного окружения с установки образа операционной системы Raspbian. Перед началом установки образа операционной системы вам потребуется подготовить дисплей, поддерживающий передачу изображения по HDMI, клавиатуру и мышь с разъемами USB, а также сетевой кабель для соединения с системой по протоколу Ethernet. Также вы можете установить соединение с системой посредством адаптера Wi-Fi. Создайте загрузочную SD-карту для первой загрузки системы в соответствии с инструкциями, приведенными на ресурсе . В процессе первой загрузки системы установщик осуществит настройку операционной системы и разместит данные из ее образа на всем доступном пространстве карты памяти. После первой загрузки вы должны иметь возможность входа в систему с помощью стандартных данных учетной записи пользователя (имя пользователя «pi» и пароль «raspberry»).
Обновление системы является разумным действием, которое должно выполняться сразу же после успешного входа в систему. Образ операционной системы Raspbian базируется на пакетах программного обеспечения дистрибутива Debian и использует приложение aptitude в качестве менеджера пакетов программного обеспечения. Кроме того, вам понадобятся пакеты программного обеспечения с именами , и . Я также мог бы порекомендовать установку Webmin для упрощения процесса администрирования системы. Инструкции по установке Webmin приведены на ресурсе (следуйте рекомендациям, приведенным в разделе «Using the Webmin APT repository»):
sudo apt-get update && sudo apt-get dist-upgrade sudo apt-get install python python-pip git git-core
После этого вам придется настроить соединение с использованием адаптера Wi-Fi. Вы можете найти подробные инструкции на ресурсе . Я рекомендую использовать вариант . На данном этапе вы можете изменить параметры настройки Raspberry Pi с помощью команды . После ввода данной команды вы получите доступ к удобному графическому интерфейсу, который позволит вам установить значения таких параметров, как объем оперативной памяти, разделяемой с графическим процессором, параметры быстродействия центрального процессора, режим использования графического интерфейса в процессе загрузки и других.
Как подключить умные устройства
Для работы умного девайса с HomeKit через прослойку в виде HomeBridge требуется две вещи:
- установленный плагин
- данные об устройстве в файле конфигурации
Искать плагин можно самостоятельно. На просторах GitHub можно найти файлы практически для любого умного устройства.
Просто впишите в Google: mi air purifier 2 homebridge (для очистителя воздуха Xiaomi Mi Air Purifier 2) и по одной из первых ссылок найдете нужный плагин.
На специальной вкладке Плагины можно осуществить поиск нужного дополнения, аналогично поиску в Google. Вписываем название девайса (с китайскими гаджетами от всевозможных суб-брендов придется повозиться) и выбираем один из предложенных плагинов.
Установка нужного плагина
На GitHub странице плагина или на другом сайте, где было найдено дополнение, первым делом описывается процесс установки.
Для установки непосредственно на Raspberry Pi или через SSH используется приведенная в описании плагина команда такого вида:
Для установки через веб-интерфейс достаточно нажать кнопку Install возле найденного в поиске дополнения.
Изменение файла конфигурации
Файл конфигурации тоже может быть изменен на самом устройстве с сервисом HomeBridge, через SSH или через веб-интерфейс. В первом случае редактируем файл config.json командой nano ~/.homebridge/config.json, а во втором переходим в визуальный редактор на вкладке веб-интерфейс.
На странице с описанием плагина находим пример конфигурации:
Нужно интегрировать данный код в уже имеющуюся конфигурацию.
В большинстве случаев плагины интегрируются в разделы “platforms” или “accessories”. Особо сложные дополнения могут иметь части кода в обоих разделах.
Тем, кто сталкивался с программированием, не составит труда корректно внести нужные части кода, другим рекомендуем внимательно методом проб и ошибок научиться редактировать файл конфигурации. Без этого все равно ничего не получится.
Заполнение параметров устройства
Обратите внимание, что в большинстве случаев требуется указать два параметра подключаемого девайса: IP-адрес и токен. С поиском адреса в домашней сети проблем не возникнет (ищите через приложение роутера или его веб-интерфейс), а вот с токеном не так все просто
Уникальный идентификатор умных устройств можно получить разными способами. Самый простой – воспользоваться модифицированным приложением Mi Home на Android. Если смартфона или планшета с нужной ОС на руках нет – устанавливаем эмулятор Android по инструкции.
1. Устанавливаем на Android модифицированное приложение Mi Home.
2. Авторизуемся в своей учетной записи с указанием правильного региона (в большинстве случаев это Материковый Китай).
3. Находим нужный девайс и в разделе Настройки – Общие параметры – Информация о сети видим поле с нужным нам токеном.
Здесь же можно найти IP-адрес.
Для устройств других производителей придется использовать другие способы добычи токенов.
Теперь можно заполнить данные девайса в конфигурации, сохранить файл и перезагрузить HomeBridge.
Если все было сделано верно, устройство появится в приложении Дом на iPhone и им можно будет управлять, как нативным девайсом с поддержкой HomeKit.
Преимущества и недостатки Raspberry Pi 3
Raspberry умный дом — это функциональная полностью безопасная система, которая позволяет сделать жизнь человека намного комфортнее.
Преимущества использования:
- После установки спецсистемы «Умный дом» жилью становится охраняемым от большинства проблем. Система позволяет обезопасить свой загородный дом, коттедж или дачу от пожара, протечки воды и даже кражи.
- При правильной установке датчика, реагирующего на движение, количество потребляемой электроэнергии значительно уменьшается, потому что свет выключается автоматически, если человек не находится в комнате. Платить за коммунальные платежи придется намного меньше.
- Уменьшение потребления электроэнергии для отопления помещений. Включить батареи можно дистанционно за 1–2 часа, в зависимости от площади, до приезда домой. Также можно выключить отопление дистанционно, если пользователь забыл это сделать.
- Увеличение уровня комфорта и экономия времени. К примеру, включить мультиварку, чайник или другой прибор, можно находясь в другой комнате. Также это работает для управления шторами или приготовление утреннего завтрака.
- Интеллектуальные развлекательные системы — «домашний кинотеатр» или система мультирум.
Несмотря на большое количество плюсов, которыми обладает данная система, есть несколько минусов. Их нужно учитывать. Умный дом на базе raspberry pi обладает такими недостатками:
- Не рационально приобретать систему для небольшой квартиры.
- Для правильного функционирования нужно разобраться в каждом элементе работы или найти человека, который сможет помощь, если какой-то механизм выйдет из строя.
- Некоторые компоненты могут со временем исчезнуть с продаж, потому что технологии не стоят на месте, а очень быстро развиваются.
Несмотря на несколько минусов, значительные плюсы этой системы их перекрывают. Raspberry Pi умный дом — это устройство, которое справляется с большим количеством поставленных задач, предлагая несколько оптимальных решений. Можно купить готовые наборы или разработать все самостоятельно. В интернете очень много инструкций и готового ПО под любую задачу. Удобно, что управлять можно по локальной сети или при помощи Интернета.
Сенсорный экран для приборной панели автомобиля
В этот проект необходимо вложить достаточно много времени, но после его успешной реализации можно получить на руки отличную сенсорную панель. Такое решение позволит сэкономить не одну сотню долларов вместо покупки заводского варианта. Управление панелью осуществляется за счет открытого ПО XBMC Media Center. С ним можно воспроизводить аудиотреки, запускать фильмы, открывать фотографии и делать множество других вещей. Главное — не отвлекаться от дороги.
Для создания панели нужно приготовить автомобильную зарядку для Raspberry, сам тачскрин. Стоит отметить, что готовое устройство успешно работает на базе Model B — в случае с B+ сенсор не полностью корректно отзывается на касания.
Подробное руководство на английском http://www.instructables.com/id/Raspberry-Pi-Touch-Screen-Car-Computer/?ALLSTEPS.
Интерфейс SPI
SPI — последовательный четырёх-проводной интерфейс передачи данных, предназначенный для обеспечения простого и недорогого высокоскоростного сопряжения микроконтроллеров и периферии.
Raspberry Pi имеет одну шину — SPI0. Но более новые версии одноплатника, например Raspberry Pi 3 Model B, обладают двумя шинами: SPI0 и SPI1
Включения шины SPI0
По умолчанию шина SPI0 отключена. Для включения выполните следующие действия.
-
Откройте терминал с рабоче стола Raspberry Pi или
-
Зайдите в настройки Raspberry Pi.
sudo raspi-config
- Выберите пункт
- Далее пункт .
- Нажмите для подтверждения включения шины.
-
Для проверки включения шины SPI0 запустите листинг директории /dev:
ls /dev/
В ответ вы должны увидеть полотно файлов, среди которых два: и .
Это значит что у вас включён SPI0 с возможностью подключения двух ведомых устройств.
Теперь вы можете использовать интерфейс SPI для коммуникации с датчиками и модулями.
Включения шины SPI1
Если вы используете Raspberry Pi 3 Model B, то вам доступно две шины SPI: и .
Для включения шины SPI1, необходимо вручную отредактировать файл настроек загрузки системы.
-
Откройте от пользователя файл настройки загрузки системы.
sudo nano /boot/config.txt
-
В конец файла добавьте команду включения .
dtoverlay=spi1-3cs
- Сохраните файл сочетанием клавиш +.
-
Для вступления изменений в силу перезагрузите Raspberry Pi.
sudo reboot
-
Для проверки включения шины SPI1 запустите листинг директории /dev:
ls /dev/
В ответ вы должны увидеть полотно файлов, среди которых три отвечают за SPI1: , и .
Если у вас включена шина SPI0, то будут ещё два файла: и .
Это значит что у вас включён SPI0 с возможностью подключения двух ведомых устройств и SPI1 с возможностью подключения трёх ведомых устройств.
Первые настройки и подготовка к работе
Для начала стоит ознакомиться с инструкцией и рекомендацией производителя относительно применения устройства. Стоит убедиться в наличии необходимых датчиков и спланировать их подключение. Плата установлена в специальной коробке, защищающей изделие от механических воздействий. Устройство не люфтит и выглядит весьма солидно.
После снятия верхней крышки можно получить доступ к плате. Единственная трудность заключается в подключении бокового разъема. Для удобства рекомендуется покупать угловой шлейф.
Дополнительно покупается два радиатора, предназначенные для охлаждения контроллера Ethernet и основного чипа.
Есть и другие решения.
Для первого пуска потребуется карта памяти, с установленной на нее операционной системой. Минимальный размер флешки должен быть от 4 Гб и более. Образ ОС доступен в Интернете (ссылка на скачивание ниже). Также потребуется программа Win32 Disc Imager.
После скачивания образа на ноутбук его необходимо распаковать из архива, после чего вставить карту памяти в кардридер. Далее запускается уже установленная программа Win32 Disc Imager.
Как только работа завершена, с помощью программы выбирается образ и записывается на флеш-накопитель.
Далее достается карту памяти с образом и вставляется в устройство Raspberry Pi 3 Model B. После этого подключается клавиатура, дисплей и мышка. При желании можно использовать беспроводную клавиатуру.
Сфера применения Raspberry Pi и «умный» дом
Область применения ограничена только фантазией пользователя. Raspberry Pi — это именно компьютер, так как имеет все необходимые ПК-атрибуты: процессор и оперативную память, USB-разъемы, беспроводные стандарты Wi-Fi и Bluetooth, возможность выхода в сеть через Ethernet и конечно же HDMI с композитным выходом. Особенностью именно этого устройства являются контакты общего назначения для ввода и вывода (GPIO). Таких контактов на плате аж 40 штук. Именно они позволяют создавать подключение с исполнительными устройствами и другой периферией, которая работает от электричества. На Raspberry Pi устанавливается Linux, как штатная операционная система. Конечно, пользователь может установить любую другую. Особой популярностью пользуется Raspbian, которую рекомендуют для тех, кто начинает знакомиться с Raspberry Pi.
Малогабаритное устройство позволяет создать даже такие системы, как охранная, с распознаванием лиц (подключается к камерам) или мультимедийная с подключением к аудиосистеме. Скорей всего, в ближайшем будущим устройства подобные Raspberry Pi будут использоваться для управления роботизированной техникой. На сегодняшний день, мини компьютер позволяет реализовать еще одну немаловажную для широкого потребителя систему — HomeKit. Это «яблочная» технология, которая появилась еще в 10 версии iOS. В Айфоне эта программа называется «Дом». Большинство энтузиастов сразу подхватило такую идею и стали реализовывать интеграцию через большинство домашних устройств, благодаря сертифицированным датчикам от тех же Apple.
Raspberry Pi Smart Home Software Options: Getting Started
What specific hardware you’ll need to automate your home with a Raspberry Pi might vary somewhat based on optional peripherals. However, for a basic Raspberry Pi smart home hub, you’ll need:
- Raspberry Pi board
- microSD card
- Raspberry Pi smart home OS
- Power supply
- Case (optional, recommended)
While many Raspberry Pi smart home projects might be better suited to a Raspberry Pi 4 board, several Raspberry Pi Zero smart home ideas exist. If you need more processing power, the Raspberry Pi 4 is the best bet. Other Raspberry Pi smart home automation software that requires low computing power runs like a champ on Pi Zero and Zero W boards. Aside from these basics, you might need additional components such as a microphone or sensor attachments. With a Raspberry Pi smart home hub, you can get started with smart home control and smart home automation.
Особенности создания «умного» дома с Raspberry Pi
Идея автоматизации дома подразумевает осуществление контроля за всеми «умными» устройствами в доме и объединение их в одну сеть. Такое решение имеет массу преимуществ. Пользователь может даже удаленно управлять многими системами: к примеру отоплением или светом в комнате. Благодаря «яблочному» голосовому помощнику Siri, контроль можно осуществлять простыми фразами, типа «Siri, выключи свет в комнате».
Примеры некоторых систем на основе связки устройства Apple и Raspberry Pi:
- голосовое управление «умными» девайсами;
- автоматизация на основе времени суток и датчиков движения (включить свет, когда темно или, когда кто-то зашел в комнату);
- полноценное удаленное управление домом.
Схема позволяет выключать свет, когда все жильцы уходят их дома. А если правильно настроить геолокацию, то можно и отключать электрическую сеть для экономии (выключатели, розетки).
Единственным минусом такой системы является обязательная сертификация для поддержки фирменного Apple-протокола HomeKit. Сертифицированные устройства стоят намного дороже. К тому же, их не так много, как хотелось бы на отечественном рынке. Установка HomeBridge позволяет создать так называемый прокси-сервер для HomeKit. Такое решение позволяет подключать любые «умные» девайсы, включая даже самодельные.
Здесь приходит на помощь Raspberry Home Kit. Для реализации управления Smart-прибором, необходимо устройство от Apple (Iphone или Ipad) и Raspberry Pi. На него устанавливается HomeBridge. Это приложение само по себе имеет голую оболочку. Поэтому необходимо еще установить плагины, внедряющие поддержку любых «умных» устройств. Большинство таких плагинов являются самодельными и их без проблем можно найти на просторах сети.
Интерфейс приложения «Дом» позволяет добавить не только все «умные» гаджеты, но и распределить их по комнатам дома. Таким образом управление дома будет осуществляться через приятный для глаза и удобный интерфейс iOS. Кроме дома, автоматизацию можно настроить и в автомобиле с помощью Raspberry Pi CarPC. Такой подход позволит управлять системами автомобиля на расстоянии.
Основные принципы работы
Для того, что бы автоматизировать работу техники для дома используется операционная система, которая позволяет выполнять большое количество задач при помощи нескольких кликов. Программирование на удаленное включение, а также выключение прибора — это не простая задача для новичка, поэтому лучше использовать специальные приложения или готовые программные продукты. В купе с железом оно имеет простой интерфейс и разработано для среднестатистического пользователя, который не имеет навыков в работе с этой системой.
«Умный дом» — это технологическая разработка, которая создана для упрощения жизни и повышения комфорта человека. Она позволяет контролировать большинство процессов в доме. К ним можно отнести: свет и отопление, работу приборов и многие другие задачи.
При разработке технологии этой спецсистемы можно выбрать один из вариантов: готовое решение или полная разработка самостоятельно. Первый способ значительно проще, потому что не занимает много времени, но и стоит дороже. Для того, что бы создать технологию умного дома своими руками нужно обладать минимальными знаниями и навыками.
Автоматизированный процесс зависит от точности всех расчетов и внедрения датчиков в нужные места. Это позволяет значительно снизить количество расходов.
MQTT-брокер
Сделаем небольшое отступление и обратим внимание на используемые инструменты. В качестве узла связи выступает MQTT-брокер
MQTT протокол — это протокол обмена сообщениями по модели издатель-подписчик поверх протокола TCP/IP, где центральная часть протокола — MQTT-сервер или же брокер. Использование MQTT в нашем проекте было выбрано по ряду причин. Во-первых, он привлекателен своей легковесностью и компактностью, вследствие чего по сети будет перемещаться существенно меньший объем траффика, а это, в свою очередь, ведёт к снижению нагрузки как на оперативную память, так и снижает энергопотребление от альтернативного источника питания – аккумулятора (тут стоит отметить, что Raspberry может быть оснащён также аккумулятором для повышения отказоустойчивости в случае обесточивания места установки). Во-вторых, протокол изначально разрабатывался как способ поддержки связи между системами с ограниченной пропускной способностью и неопределенной стабильностью сети. Ну а тем более, чтобы не ограничивать свою фантазию в том, где можно расположить скрытую камеру – данное достоинство играет не последнюю роль, ровно как и значимость и уверенность в том, что сообщение будет гарантированно доставлено (как никак, конструируем систему охраны). В качестве MQTT-брокера был использован open-source брокер Mosquitto
В качестве узла связи выступает MQTT-брокер. MQTT протокол — это протокол обмена сообщениями по модели издатель-подписчик поверх протокола TCP/IP, где центральная часть протокола — MQTT-сервер или же брокер. Использование MQTT в нашем проекте было выбрано по ряду причин. Во-первых, он привлекателен своей легковесностью и компактностью, вследствие чего по сети будет перемещаться существенно меньший объем траффика, а это, в свою очередь, ведёт к снижению нагрузки как на оперативную память, так и снижает энергопотребление от альтернативного источника питания – аккумулятора (тут стоит отметить, что Raspberry может быть оснащён также аккумулятором для повышения отказоустойчивости в случае обесточивания места установки). Во-вторых, протокол изначально разрабатывался как способ поддержки связи между системами с ограниченной пропускной способностью и неопределенной стабильностью сети. Ну а тем более, чтобы не ограничивать свою фантазию в том, где можно расположить скрытую камеру – данное достоинство играет не последнюю роль, ровно как и значимость и уверенность в том, что сообщение будет гарантированно доставлено (как никак, конструируем систему охраны). В качестве MQTT-брокера был использован open-source брокер Mosquitto.
Модули, которые можно использовать
Для расширения функциональности умного дома на Raspberry Pi 3 Model B можно использовать дополнительные модули. Их применение расширяет число доступных опций и позволяет создать уникальную систему, обеспечивающую максимальное удобство:
- ВИДЕОКАМЕРА. Подключение этого модуля позволяет дополнить умный дом системой видеонаблюдения. Камера совмещается с операционной системой небольшого ПК Raspberry Pi 3 Model B. После установки устройства можно фиксировать видео в разрешении Full HD и делать фотографии с разрешением в 5 МП.
- ДАТЧИКИ ДЫМА И ВОДЫ. Установка этих модулей позволяет защитить имущество от пожара и протечки соответственно. Для владельцев больших домов это полезная опция, позволяющая избежать неприятностей. В случае задымления или потопа система оперативно информирует владельца о наличии проблем.
- ИЗМЕРИТЕЛЬ ТЕМПЕРАТУРЫ И ВЛАЖНОСТИ ВОЗДУХА. С помощью таких модулей можно превратить умный дом на базе Raspberry Pi 3 Model B в метеостанцию с подробными сведениями о ситуации за окном и внутри помещения.
- ДАТЧИК ДВИЖЕНИЯ. Подключение устройства позволяет автоматически включать и отключать свет в помещениях. Датчик движения полезен на улице, в гараже, в коридоре и других нежилых помещениях.
- МОДУЛЬ БЕСПРОВОДНОЙ СВЯЗИ. Для объединения внешних устройств и контроллера можно использовать приемник и передатчик, работающие на частоте 433 Гц. При наличии средств можно купить более прогрессивный вариант устройства — Z-Wave Fibaro Home Center
Применение указанных датчиков расширяет возможности умного дома и повышает уровень его защиты.
Так же читайте, какие камеры видеонаблюдения с удаленным доступом существуют на рынке, рейтинг популярных моделей, особенности подключения.