Índice:

R Pi - Controle remoto PA e sistema de iluminação: 4 etapas (com imagens)
R Pi - Controle remoto PA e sistema de iluminação: 4 etapas (com imagens)

Vídeo: R Pi - Controle remoto PA e sistema de iluminação: 4 etapas (com imagens)

Vídeo: R Pi - Controle remoto PA e sistema de iluminação: 4 etapas (com imagens)
Vídeo: Raspberry Pi High Quality Camera Getting Started Guide - First Pictures and Videos 2024, Novembro
Anonim
R Pi - Controle remoto PA e sistema de iluminação
R Pi - Controle remoto PA e sistema de iluminação
R Pi - Controle remoto PA e sistema de iluminação
R Pi - Controle remoto PA e sistema de iluminação
R Pi - Controle remoto PA e sistema de iluminação
R Pi - Controle remoto PA e sistema de iluminação

Este é um projeto simples para fazer anúncios de áudio e ligar e desligar luzes em um PI remotamente de um navegador da web. Então aqui está o que você precisa:

1) Raspberry Pi com Apache e PhP pré-instalado. Usei um velho Pi v1 que tinha por aí. Presumo que você o tenha conectado à sua rede doméstica através de wi-fi ou ethernet.

2) Alto-falante (s) de áudio que podem ser conectados ao Pi por meio da conexão do alto-falante de saída. Usei um antigo conjunto de alto-falantes de um antigo sistema de som estéreo.

3) Conjunto de luzes da árvore de Natal - comprei o meu na Poundland.

4) Clipes de crocodilo e cabos de placa de ensaio para conectar / testar o Pi aos alto-falantes e luzes. (Ver 7)

5) PC ou laptop com emulador de terminal Putty para acessar o Raspberry Pi

6) Fio termorretrátil

7) Pistola de ar quente para conectar alto-falante e fios de iluminação

A ideia básica é usar um formulário da web para fazer anúncios remotos por meio do (s) meu (s) alto-falante (s) e também ligar e desligar as luzes. Eu uso scripts PHP que, por sua vez, executam Espeak para o bit text to speech e comandos GPIO para as luzes. Presumo que você saiba como instalar o Apache e o PhP em seu Raspberry Pi. Está muito bem documentado.

Tentei manter esse custo baixo e usei um alto-falante do sistema estéreo antigo que tinha e, depois de remover as conexões e expor os cabos, conectei-o a um cabo de microfone antigo que também cortei. Isso significava que, embora o o volume do alto-falante estava mais baixo do que um alto-falante com alimentação externa, eu poderia ligar tudo com o Raspberry Pi. O mesmo acontecia com as luzes. Tirei a caixa da fonte de alimentação de 3,3 V deles, expus os fios e os conectei ao Pi usando conectores de placa de ensaio fêmea / macho. Eu conectei tudo isso com clipes de crocodilo.

Após teste e validação, posteriormente conectei todos os fios com fio termorretrátil usando uma pistola de ar quente.

Etapa 1: configurar e testar o hardware

Configurar e testar o hardware
Configurar e testar o hardware
Configurar e testar o hardware
Configurar e testar o hardware
Configurar e testar o hardware
Configurar e testar o hardware

Liguei o Pi e conectei os alto-falantes à saída de áudio do Pi. Eu conectei as luzes conectando uma extremidade ao GPIO17 (6º pino para baixo na coluna interna) e GND (3º pino para baixo na coluna externa) - veja a foto acima. POR FAVOR, NOTE QUE EU USEI UM PI versão 1, POR FAVOR, MUDE OS PINOS CONFORME SE VOCÊ ESTIVER USANDO UMA VERSÃO MAIS TARDE DO PI.

Acima estão o fio termorretrátil e a pistola de ar quente para conectar o alto-falante e os fios de iluminação

Em seguida, com tudo ligado, loguei no Pi usando Putty do meu laptop Windows. Para encontrar o endereço IP do Pi, abra o endereço IP do seu roteador no navegador da web (geralmente é algo como 192.168.1.254), que mostrará a lista de dispositivos conectados, incluindo o nome do host do Pi e o endereço IP. Você pode usar qualquer um deles para fazer login no Putty, mas geralmente uso o endereço IP porque tenho vários PIs. Como alternativa, você pode fazer login no Putty tentando um nome de host, como pi ou raspberrypi. Quando solicitado no Putty pelo nome de usuário e senha, tente pi / raspberry, que são os padrões. (USAR PADRÕES É MUITO INSEGURO E DEIXA VOCÊ ABERTO PARA ATAQUES DE HACKERS MESMO QUE EM UMA REDE PRIVADA). Na minha experiência, os programas Pi, Espeak e bibliotecas GPIO são instalados por padrão na maioria das imagens Pi.

Ok, quando você acessar a linha de comando no RaspberryPi tente os seguintes comandos - sudo alsamixer que deve revelar os controles da placa de som - se você tiver um alto-falante passivo, como eu usei, você precisará aumentar o volume para o máximo. Em seguida, acenda as luzes

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

então, desligue as luzes

(NB qualquer problema, tente apenas sudo gpio etc - também verifique se o gpio está instalado digitando gpio -v - se você precisar instalar, dê uma olhada em

sudo / usr / local / bin / gpio -g escrever 17 0

Agora teste se o espeak funciona

~ $ sudo espeak "isto é um teste"

Raramente tive problemas com o Espeak, mas encontrei problemas quando o volume do Alsamixer está baixo e, às vezes, outros programas agarraram a placa de som. Você precisa executar ps -ef e ver quais outros processos de mídia estão em execução. Você pode usar algo como sudo kill -9 $ (sudo ps aux | sudo grep -v grep | sudo grep mplayer | sudo awk '{print $ 2}') para matá-los - Usaremos isso mais tarde no script PHP

Etapa 2: Configurando o servidor da Web

Configurando o servidor web
Configurando o servidor web
Configurando o servidor web
Configurando o servidor web

Há uma série de etapas que precisamos realizar

1) Encontre o proprietário do serviço / servidor web apache2 - execute sudo ps aux | egrep '(apache | httpd)' e você verá www-data2) adicione www-data ao grupo sudo - execute sudo nano / etc / sudoers --- adicione a linha www-data ALL = (ALL) NOPASSWD: ALL

3) adicionar www-data ao grupo de áudio - sudo adduser www-data audio

4) Uma etapa opcional é criar um arquivo phpinfo que informa todas as funções PHP que você tem e a localização de

o arquivo conf se você quiser mudar alguma coisa. Por exemplo, algumas versões do PHP bloqueiam a função shell_exec () que precisamos para executar programas de linha de comando como Espeak do servidor web. Veja como você configura o phpinfo..

Vá para o diretório da web padrão geralmente / var / www ou / var / www / html….. é aquele com o arquivo index.html e digite sudo nano phpinfo.php e digite o seguinte no editor nano e pressione control O para salvar e sair

Não se esqueça de torná-lo executável digitando sudo chmod 755 phpinfo.php - Para visualizá-lo, abra o seguinte url em seu navegador usando seu nome de host em vez do meu, ou seja, raspberrypi -

?>

Etapa 3: o código PHP e os scripts da web

O código PHP e os scripts da Web
O código PHP e os scripts da Web

Eu usei dois programas aqui - um para o formulário web (espeak_form.php) e o outro que processa os dados do formulário (my_espeak.php) Eu incluí estes acima como arquivos de texto e para transferi-los para o seu Pi, usando Putty criar ambos php arquivos e, em seguida, recortar e colar dos respectivos arquivos de texto mostrados acima

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

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

Lembre-se de torná-los executáveis digitando sudo chmod 755 *.php

O script PHP do formulário web (espeak_form.php) que escrevi não ganhará nenhum prêmio de design, mas tem 2 subformulários. Um para fazer o anúncio (texto em fala) e o outro formulário é usado para alternar as luzes um e apagá-lo. A sub forma espeak permite que você selecione diferentes sotaques, uma voz feminina e uma função de sussurro, O núcleo do my_espeak.php é o uso da função php - shell_exec (). Como você pode ver, isso permite que o PHP execute comandos do Linux sem a necessidade de outras bibliotecas, como você precisaria dizer em Python.

Etapa 4: Conclusão

Esta é uma solução razoavelmente complexa porque você está usando muitos elementos do ambiente Pi, ou seja, PHP, funções de linha de comando, Apache, GPIO etc. Espero que ilustre o que você pode fazer com PIs especificamente e IOT em geral. Existem várias outras maneiras de fazer isso e você pode até mesmo controlá-lo pela Internet se entender o encaminhamento de porta, firewall e / ou VPN. Espero que tenham gostado, mas aqui está a minha isenção de responsabilidade:

NÃO POSSO GARANTIR QUE ESTE É UM SISTEMA SEGURO OU PROTEGIDO E, PORTANTO, NÃO O USE PARA FINS QUE INCLUEM PROCESSAMENTO DE DADOS PRIVADOS, PESSOAIS OU COMERCIALMENTE SENSÍVEIS. TAMBÉM, CONECTE OS SEUS CABOS COM SEGURANÇA E SE VOCÊ ESTIVER USANDO CONEXÕES TEMPORÁRIAS, POR EXEMPLO OS CLIPES DE CROCODILO ENTÃO NÃO DEIXAM O SISTEMA SEM VIGILÂNCIA OU PARA USO EM AMBIENTES DIFÍCEIS.

Esta é uma maneira fantástica de aprender muito sobre IOT e apenas lembrar antes de pensar em aplicativos comerciais que usam métodos como este. O Raspberry Pi é tão bom quanto seu cartão SD. Eu diria um ano em uso normal, em comparação com alguns servidores que usei e que funcionaram por mais de 10 anos.

De qualquer forma, boa sorte.

Recomendado: