Оглавление:

R Pi - Дистанционное управление PA и системой освещения: 4 шага (с изображениями)
R Pi - Дистанционное управление PA и системой освещения: 4 шага (с изображениями)

Видео: R Pi - Дистанционное управление PA и системой освещения: 4 шага (с изображениями)

Видео: R Pi - Дистанционное управление PA и системой освещения: 4 шага (с изображениями)
Видео: Камера-ЛАМПА со слежением и определением человека. 2024, Ноябрь
Anonim
R Pi - Система дистанционного управления и освещения
R Pi - Система дистанционного управления и освещения
R Pi - Система дистанционного управления и освещения
R Pi - Система дистанционного управления и освещения
R Pi - Дистанционное управление PA и системой освещения
R Pi - Дистанционное управление PA и системой освещения

Это простой проект для создания звуковых объявлений и включения и выключения света на PI удаленно из веб-браузера. Итак, вот что вам нужно:

1) Raspberry Pi с предустановленными Apache и PhP. Я использовал старый Pi v1, который у меня был. Я предполагаю, что он подключен к вашей домашней сети через Wi-Fi или Ethernet.

2) Аудиоколонки, которые можно подключить к Pi через выходное соединение динамика. Я использовал старый комплект динамиков от старинной стереосистемы.

3) Комплект рождественских огней для елки - я купил свою в Паундленде.

4) Зажимы типа «крокодил» и кабели для макета для подключения / тестирования Pi к динамикам и источникам света (см. 7).

5) ПК или ноутбук с эмулятором терминала Putty для доступа к Raspberry Pi

6) термоусадочная проволока

7) Пистолет горячего воздуха для подключения акустических и осветительных проводов.

Основная идея состоит в том, что я использую веб-форму, чтобы делать удаленные объявления через свои динамики, а также включать и выключать свет. Я использую сценарии PHP, которые, в свою очередь, выполняют Espeak для преобразования текста в речь и команды GPIO для источников света. Я предполагаю, что вы знаете, как установить Apache и PhP на свой Raspberry Pi. Это очень хорошо задокументировано.

Я попытался сохранить эту низкую стоимость, поэтому я использовал старый динамик стереосистемы, который у меня был, и после удаления соединений и обнажения кабелей я подключил его к старому микрофонному кабелю, который я также разрезал. громкость динамика была ниже, чем у динамика с внешним питанием, я мог запитать все от Raspberry Pi. То же самое и с огнями. Я снял с них блок питания 3,3 В, обнажил провода и подключил их к Pi с помощью разъемов на макетной плате «мама» / «папа». Все это я соединил зажимами типа «крокодил».

После тестирования и проверки я позже соединил все провода термоусадочной проволокой с помощью термофена.

Шаг 1. Настройте и протестируйте оборудование

Настройте и протестируйте оборудование
Настройте и протестируйте оборудование
Настройте и протестируйте оборудование
Настройте и протестируйте оборудование
Настройте и протестируйте оборудование
Настройте и протестируйте оборудование

Я включил Pi и подключил динамики к выходному аудиоразъему Pi. Я подключил фары, соединив один конец с GPIO17 (6-й контакт на внутренней колонке) и GND (3-й контакт на внешней колонке) - см. Фото выше. ПОЖАЛУЙСТА, ОБРАТИТЕ ВНИМАНИЕ, ЧТО Я ИСПОЛЬЗОВАЛ PI версии 1, поэтому, ПОЖАЛУЙСТА, ИЗМЕНИТЕ ПИН-коды, ЕСЛИ ВЫ ИСПОЛЬЗУЕТЕ ПОЗДНУЮ ВЕРСИЮ PI.

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

Затем, когда все было включено, я вошел в Pi с помощью Putty со своего ноутбука с Windows. Чтобы найти IP-адрес Pi, откройте IP-адрес вашего маршрутизатора в веб-браузере (обычно это что-то вроде 192.168.1.254), который покажет список подключенных устройств, включая имя хоста Pi и IP-адрес. Вы можете использовать любой из них для входа в Putty, но я обычно использую IP-адрес, потому что у меня есть несколько PI. Кроме того, вы можете войти в Putty, попробовав имя хоста, такое как pi или raspberrypi. Когда в Putty будет предложено ввести имя пользователя и пароль, попробуйте pi / raspberry, которые являются значениями по умолчанию. (ИСПОЛЬЗОВАНИЕ ДАННЫХ ПО УМОЛЧАНИЮ ОЧЕНЬ БЕЗОПАСНО И ОСТАВЛЯЕТ ВАС ОТКРЫТЫМ ДЛЯ АТАКИ ХАКЕРОВ, ДАЖЕ В ЧАСТНОЙ СЕТИ). По моему опыту, программы Pi, библиотеки Espeak и GPIO по умолчанию установлены на большинстве образов Pi.

Хорошо, когда вы получаете доступ к командной строке на RaspberryPi, попробуйте следующие команды - sudo alsamixer, который показывает элементы управления звуковой картой - если у вас есть пассивный динамик, как я использовал, вам нужно будет увеличить громкость до максимума. Затем включите свет

sudo / usr / local / bin / gpio -g mode 17 outudo / usr / local / bin / gpio -g write 17 1

затем выключите свет

(Обратите внимание: любые проблемы, просто попробуйте просто sudo gpio и т. Д. - также проверьте, установлен ли gpio, набрав gpio -v - если вам нужно установить, посмотрите

sudo / usr / local / bin / gpio -g запись 17 0

Теперь проверьте, что espeak работает

~ $ sudo espeak "это тест"

У меня редко возникали проблемы с Espeak, но я сталкивался с проблемами, когда громкость Alsamixer низкая, а иногда другие программы захватывали звуковую карту. Вам нужно запустить ps -ef и посмотреть, какие еще запущены медиа-процессы. Вы можете использовать что-то вроде sudo kill -9 $ (sudo ps aux | sudo grep -v grep | sudo grep mplayer | sudo awk '{print $ 2}'), чтобы убить их - мы используем это позже в сценарии PHP

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

Настройка веб-сервера
Настройка веб-сервера
Настройка веб-сервера
Настройка веб-сервера

Нам необходимо выполнить ряд шагов

1) Найдите владельца веб-сервиса / сервера apache2 - запустите sudo ps aux | egrep '(apache | httpd)', и вы должны увидеть www-data2) добавьте www-data в группу sudo - запустите sudo nano / etc / sudoers --- добавьте строку www-data ALL = (ALL) NOPASSWD: ALL

3) добавить www-data в аудиогруппу - sudo adduser www-data audio

4) Необязательный шаг - создать файл phpinfo, который сообщает вам обо всех имеющихся у вас функциях PHP и о местонахождении

файл conf, если вы захотите что-то изменить. Например, некоторые версии PHP блокируют функцию shell_exec (), которая нам нужна для запуска программ командной строки, таких как Espeak, с веб-сервера. Вот как вы настраиваете phpinfo..

Перейдите в свой веб-каталог по умолчанию, обычно / var / www или / var / www / html….. это тот, который содержит файл index.html, и введите sudo nano phpinfo.php, затем введите следующее в редакторе nano и нажмите control O, чтобы Сохранить и выйти

Не забудьте сделать его исполняемым, набрав sudo chmod 755 phpinfo.php - Чтобы просмотреть его, откройте следующий URL-адрес в своем веб-браузере, используя свое имя хоста вместо моего, т.е. raspberrypi -

?>

Шаг 3. Код PHP и веб-скрипты

Код PHP и веб-скрипты
Код PHP и веб-скрипты

Я использовал здесь две программы - одну для веб-формы (espeak_form.php), а другую, которая обрабатывает данные формы (my_espeak.php), я включил их выше в виде текстовых файлов и для передачи их на ваш Pi, используя Putty, создайте как php файлы, а затем вырезать и вставить из соответствующих текстовых файлов, показанных выше

pi @ raspberrypi / var / www $ sudo nano /var//www/my_espeak.php

pi @ raspberrypi / var / www $ sudo nano /var//www/espeak_form.php

Не забудьте сделать их исполняемыми, набрав sudo chmod 755 *.php

Написанный мной PHP-скрипт веб-формы (espeak_form.php) не выиграет никаких дизайнерских призов, но у него есть 2 подформы. Один для объявления (преобразование текста в речь), а другой - для одного и того же выключения света. Дополнительная форма espeak позволяет вам выбирать различные акценты, женский голос и функцию шепота, Ядром my_espeak.php является использование функции php - shell_exec (). Как видите, это позволяет PHP выполнять команды Linux без необходимости использования других библиотек, как вам нужно было бы сказать в Python.

Шаг 4: Заключение

Это достаточно сложное решение, поскольку вы используете многие элементы среды Pi, то есть PHP, функции командной строки, Apache, GPIO и т. Д. Я надеюсь, что оно иллюстрирует, что вы можете делать с PI, в частности, и IOT в общем. Есть несколько других способов добиться этого, и вы даже можете управлять им из Интернета, если вы понимаете переадресацию портов, брандмауэр и / или VPN. Надеюсь, вам понравилось, но вот мой отказ от ответственности:

Я НЕ МОГУ ГАРАНТИРОВАТЬ, ЧТО ЭТО БЕЗОПАСНАЯ ИЛИ НАДЕЖНАЯ СИСТЕМА, ПОЭТОМУ НЕ ИСПОЛЬЗУЙТЕ ЕЕ В ЦЕЛЯХ, ВКЛЮЧАЮЩИХ ОБРАБОТКУ ЧАСТНЫХ, ЛИЧНЫХ ИЛИ КОММЕРЧЕСКИХ ДАННЫХ. ТАКЖЕ, ПОДКЛЮЧАЙТЕ КАБЕЛИ БЕЗОПАСНО, И ЕСЛИ ВЫ ИСПОЛЬЗУЕТЕ ВРЕМЕННЫЕ СОЕДИНЕНИЯ, например, КРОКОДИЛОВЫЕ ЗАЖИМЫ, ЗАТЕМ НЕ ОСТАВЛЯЙТЕ СИСТЕМУ БЕЗ ПРЕДОСТАВЛЕНИЯ ИЛИ ИСПОЛЬЗУЙТЕ В ТЯЖЕЛЫХ УСЛОВИЯХ.

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

В любом случае, удачи.

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