Оглавление:

Автоматизация умного дома с розетками Energenie - бесконтактные розетки: 4 шага
Автоматизация умного дома с розетками Energenie - бесконтактные розетки: 4 шага

Видео: Автоматизация умного дома с розетками Energenie - бесконтактные розетки: 4 шага

Видео: Автоматизация умного дома с розетками Energenie - бесконтактные розетки: 4 шага
Видео: РАЗРУШАЕМ МИФ!!! О том, что Реле Напряжения всегда спасет технику от неисправностей в сети. 2024, Июль
Anonim
Автоматизация умного дома с розетками Energenie - бесконтактные розетки
Автоматизация умного дома с розетками Energenie - бесконтактные розетки
Автоматизация умного дома с розетками Energenie - бесконтактные розетки
Автоматизация умного дома с розетками Energenie - бесконтактные розетки
Автоматизация умного дома с розетками Energenie - бесконтактные розетки
Автоматизация умного дома с розетками Energenie - бесконтактные розетки

Вступление

Существует множество примеров автоматизации умного дома, но этот простой и очень эффективно работает в течение года в моем доме, так что я надеюсь, вам он понравится. Когда вы закончите, у вас будет устройство, которое может сканировать сеть, чтобы узнать, находитесь ли вы в доме, в зависимости от того, какое устройство с поддержкой Wi-Fi вы держите при себе, и может управлять набором розеток с помощью радиочастотной антенны. Итак, теперь, когда вы войдете в свой дом, свет включится, а когда вы уйдете, он выключится исключительно из-за вашего присутствия (также вы можете сэкономить много энергии на приборах, которые не должны быть включены, когда вы не там, как у беспроводных колонок).

Он работает на Raspberry Pi 2 модели B и использует пи-мотот Energenie, хотя я уверен, что любой RF-управляемый разъем можно взломать для работы с правильным комплектом. Он написан на Python, в основном с использованием библиотеки nmap-python для сканирования портов в вашей локальной сети.

Требования:

1. Raspberry Pi - я использовал 2 модели B, но любой из них будет работать (хотя не уверен в надежности нуля в беспроводной сети) - подключен к вашему маршрутизатору (если возможно, через Ethernet).

2. Плата и розетки для пи-мота Energenie

3. Длина провода и паяльника по возможности

4. Дополнительная кнопка и переопределение светодиода

Шаг 1: Шаг 1: Сборка

Шаг 1: Сборка
Шаг 1: Сборка
Шаг 1: Сборка
Шаг 1: Сборка
Шаг 1: Сборка
Шаг 1: Сборка

Мне не нужно повторять здесь основные инструкции по настройке, у Pi-mote есть свои собственные инструкции, которые довольно полны. Вы можете запустить практический код, чтобы проверить правильность работы переключателей.

energenie4u.co.uk/res/pdfs/ENER314%20UM.pd…

Хотя на плате есть антенна, для большего диапазона (> 5 м) рекомендуется добавить проволочную антенну, как показано на изображении (вертикальный черный провод). Сигналы передаются на частоте 433 МГц, поэтому длина антенны должна составлять примерно 1/4 * v / f ~ = 15 см.

Я также добавил к себе лего, я позволю вам судить о качестве этой работы:)

Шаг 2: Шаг 2: Определение IP-адреса ваших устройств

Шаг 2. Определение IP-адреса ваших устройств
Шаг 2. Определение IP-адреса ваших устройств

Как уже упоминалось, основным программным инструментом является библиотека под названием nmap, которая была адаптирована для python и может быть загружена отсюда: https://pypi.python.org/pypi/python-nmap/0.6.1. Она может делать множество вещей:

Сначала мы проведем широкое сканирование сети, чтобы найти нужные устройства, и в основной программе запустим сканирование сети.

Откройте терминал Python и введите:

импортировать nmap

nm = nmap. PortScanner ()

nm.scan (hosts = 'диапазон IP-адресов сети', arguments = '- sP')

Диапазон IP-адресов будет примерно таким: 192.168.0.1/24.

Это даст вам длинный список устройств в вашей сети, вам нужно будет использовать метод проб и ошибок, чтобы определить, какие устройства вас интересуют.

Этот шаг легче выполнить с помощью команд arp-scan или ping вне интерпретатора python, которые дают вам некоторую информацию об устройствах, но, поскольку мы все равно использовали библиотеку python-nmap, я подумал, что вставлю ее.

Как только вы определили, какие устройства хотите использовать в качестве контроллеров присутствия, например мобильные телефоны, планшеты и т. д. Запишите их IP-адреса. Это работает как в динамически, так и в статически контролируемых сетях IP-адресов.

Чтобы убедиться, что у вас правильное устройство, вы можете отключить его от сети и повторно запустить сканирование, тогда оно не должно отображаться на вашем сканировании.

Шаг 3: Шаг 3: Настройте свои сокеты

Шаг 3: Настройте свои сокеты
Шаг 3: Настройте свои сокеты

Теперь, когда у вас есть IP-адреса, вам нужно настроить сокеты. Для этого нужно удерживать зеленую кнопку на розетках до тех пор, пока не замигает красный свет, а затем посылать выбранный сигнал. Различные сигналы достигаются набором из 4 двоичных переключателей, соответствующих цифровым выходам на Pi.

В руководстве Energenie есть пример кода для переключения, я бы предложил скопировать его и адаптировать короткий скрипт, который позволяет вам настраивать сокеты, отправляя сигнал при запуске скрипта.

Шаг 4: Шаг 4: Напишите свой код

И перейдем к финальной программе.

Я приложил код, который использовал, который работал для двух устройств для каждого из жильцов нашего дома, в то время как была кнопка отмены для всех остальных.

Код работает путем поиска IP-адресов 192.168.0.10 и 192.168.0.28. Затем он смотрит только на порты 80 и 62078, чтобы сэкономить время, эти порты часто открыты для связи на мобильных устройствах. Измените IP-адреса на адреса, которые вы нашли на последнем шаге. Он также проверяет ввод кнопки, в этом случае кнопка подключена к контакту 40 в GPIO.setup с заземлением. Если какое-либо из устройств присутствует или кнопка включена, он посылает сигнал на розетки для включения.

Чтобы избежать возможного отключения: хотя устройство будет быстро включаться в вашем присутствии, так как нет ложных срабатываний, оно отключится через более длительный период времени. Это связано с тем, что иногда возникают ложноотрицательные результаты, т. Е. Устройство не определяется правильно при каждом сканировании. Как я уже упоминал, у нас не было ни одного выпадающего за год, когда мы использовали эту технику.

Я также оставил отладочный код, так как он полезен для определения правильности работы вашего кода. Не стесняйтесь создавать и модифицировать эту основу, чтобы иметь множество сокетов и множество устройств, которые взаимодействуют друг с другом. Кроме того, вы, вероятно, захотите постоянно запускать этот код на своем Pi в фоновом режиме, пока он выполняет другие действия, предпочтительно при запуске. Для получения информации о том, как это сделать, см. Эту ветку:

Рекомендуемые: