Оглавление:

Выключатель света Wi-Fi Веб-сервер Raspberry Pi: 8 шагов (с изображениями)
Выключатель света Wi-Fi Веб-сервер Raspberry Pi: 8 шагов (с изображениями)

Видео: Выключатель света Wi-Fi Веб-сервер Raspberry Pi: 8 шагов (с изображениями)

Видео: Выключатель света Wi-Fi Веб-сервер Raspberry Pi: 8 шагов (с изображениями)
Видео: Home Assistant - настраиваем lovelace, первые шаги 2024, Ноябрь
Anonim
Выключатель света Wi-Fi Веб-сервер Raspberry Pi
Выключатель света Wi-Fi Веб-сервер Raspberry Pi

Я хотел управлять выключателем света в своей спальне, не вставая с кровати, поэтому я хотел иметь возможность управлять им со своего телефона. У меня было несколько дополнительных ограничений, я хотел иметь возможность легко управлять им с любого устройства, я хотел иметь возможность использовать выключатель света как обычно, и я не мог вносить существенные изменения в оборудование, когда я снимаю квартиру.

Я решил использовать Raspberry Pi для управления серводвигателем, который будет перемещать переключатель. Raspberry Pi запускал веб-сервер, к которому я мог получить доступ, находясь в локальной сети. Ссылки на веб-сайте на этом сервере позволили бы мне включать и выключать переключатель. Обесточив сервопривод между переключениями, я все еще мог использовать выключатель как обычно.

Шаг 1: материалы

Расперри Пи

Серводвигатель:

smile.amazon.com/gp/product/B0015H2V72/ref…

Проволочные гайки

Провода перемычки

Шаг 2: Шаг 1: Настройте Raspberry Pi

Это можно сделать разными способами. Если у вас под рукой есть монитор HDMI и клавиатура USB, я думаю, это немного проще. В противном случае вы можете выполнить настройку «без головы».

Вот хороший учебник по настройке без подключения к компьютеру в Windows:

www.circuitbasics.com/raspberry-pi-basics-…

И еще один для Mac:

www.circuitbasics.com/raspberry-pi-basics-…

Но самый простой - загрузить SD-карту с помощью NOOBS, загрузить Pi при подключении к монитору и клавиатуре и просто выполнить настройку. В этом руководстве это довольно хорошо объясняется:

www.circuitbasics.com/raspberry-pi-basics-…

Если вы не выполняли настройку без подключения к сети, вы все равно должны подготовить SSH, это необходимо для остальной части этого. Для этого я использую Putty. Получи это здесь:

www.circuitbasics.com/raspberry-pi-basics-…

А если вы не знаете IP-адрес своего Pi, вы можете использовать расширенный IP-сканер:

Затем просто введите IP-адрес для числа «пи» в поле «Имя хоста / IP-адрес», оставьте порт на 22 и нажмите «Открыть». Вам будет предложено ввести логин.

Шаг 3: Шаг 2: Настройте веб-сервер

Шаг 2. Настройте веб-сервер
Шаг 2. Настройте веб-сервер

Для запуска веб-сервера я использовал Apache. Вы можете установить это, используя команду:

sudo apt-get install apache2

По умолчанию это должно давать вам заставку при переходе к IP-адресу вашего пи. Это должно выглядеть как на картинке ниже.

Шаг 4: Шаг 3: Создайте веб-сайт

Шаг 3. Создайте веб-сайт
Шаг 3. Создайте веб-сайт
Шаг 3. Создайте веб-сайт
Шаг 3. Создайте веб-сайт

Вы захотите заменить страницу-заставку по умолчанию на свой веб-сайт, который может управлять серводвигателем. Первым делом нужно заменить индексный файл. Ваш индексный файл для веб-сайта должен находиться в / var / www / html. Используйте свой любимый текстовый редактор, чтобы создать файл, или просто скопируйте файл сюда, используя что-то вроде winscp. Добавьте "index.php" в это место, вам придется заново сохранить его как файл php, поскольку я не мог загрузить его как таковой. Этот php-файл создает очень простой веб-сайт с двумя ссылками: одна на «cgi-bin / off.py», а вторая - на «cgi-bin / on.py». Это два скрипта на Python, которые изменяют положение серводвигателя.

Скрипты python должны быть помещены в другое место, чтобы Apache мог им работать. Их нужно будет положить в cgi-bin. Сюда отправляются файлы, если они должны запускаться в интерфейсе общего шлюза, который позволяет запускать сценарии на пи. Перейдите в / usr / lib / cgi-bin и добавьте два файла «on.py» и «off.py».

Шаг 5: Шаг 4: Установите двигатель

Шаг 4: Установите двигатель
Шаг 4: Установите двигатель

Я нашел отличную деталь от другого производителя для установки сервопривода, который может переключать стандартный выключатель света. Вы можете найти для него 3d-файлы здесь:

github.com/suyashkumar/smart-lights

Это сервопривод стандартного размера, как указано в разделе деталей. Распечатайте это или сделайте распечатку, а затем прикрепите к выключателю света.

Шаг 6: Шаг 5: Подключите Pi и мотор

Шаг 5: Подключите Pi и мотор
Шаг 5: Подключите Pi и мотор

Я запитал пи с микро-USB. Я отсоединил еще один микро-USB и подключил к нему землю и питание сервопривода. Я поделил землю между пи и сервоприводом. Затем я подключил сигнальный контакт сервопривода к GPIO18 на Pi.

Шаг 7: Шаг 6: настройка скриптов

Шаг 6. Настройте скрипты
Шаг 6. Настройте скрипты

Вам нужно будет немного поэкспериментировать с настройкой, чтобы узнать, какие значения соответствуют для вас включению и выключению. Pi позволяет писать в gpio из командной строки, используя довольно простые команды. чтобы сделать gpio 18 штифтом pwm, используйте команду:

gpio -g mode 18 pwm

затем настройте pwm с помощью:

gpio pwm-ms

gpio pwmc 192

gpio pwmr 2000

Это просто разумные значения для конфигурации частоты ШИМ. Следующее использование:

gpio -g pwm 18 120

Где вы меняете 120 вокруг, чтобы найти подходящие значения для положения включения и выключения.

После того, как вы нашли подходящие значения для выключения и включения, используйте текстовый редактор, чтобы изменить эти значения в соответствующих сценариях для двух позиций. Место для внесения изменения выделено на картинке.

Шаг 8: Шаг 7: Проверьте это

Image
Image
Беспроводной конкурс
Беспроводной конкурс

Перейдите к IP-адресу пи, вы должны увидеть веб-страницу со ссылкой для включения и выключения. На каждой странице также будет ссылка на другую страницу.

Для облегчения доступа к этим страницам удобно добавить ярлык на главный экран телефона.

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