Índice:

Quadro de avisos do Raspberry Pi: 11 etapas (com imagens)
Quadro de avisos do Raspberry Pi: 11 etapas (com imagens)

Vídeo: Quadro de avisos do Raspberry Pi: 11 etapas (com imagens)

Vídeo: Quadro de avisos do Raspberry Pi: 11 etapas (com imagens)
Vídeo: 🎥COMO USAR A CÂMERA NO RASPBERRY PI 3B 2024, Novembro
Anonim
Quadro de avisos do Raspberry Pi
Quadro de avisos do Raspberry Pi
Quadro de avisos do Raspberry Pi
Quadro de avisos do Raspberry Pi
Quadro de avisos do Raspberry Pi
Quadro de avisos do Raspberry Pi

Este é um projeto em que trabalhei para minha igreja. Queríamos um quadro de avisos eletrônico que fosse montado no nártex / área do saguão e percorresse slides estáticos a cada poucos segundos.

Estes eram nossos objetivos de design:

  • Slides estáticos, sem vídeo ou áudio
  • Admin gera slides em PowerPoint (ferramenta familiar, nenhum software novo para aprender)
  • O administrador pode arrastar e soltar uma nova apresentação para substituir a antiga
  • Nenhuma solução baseada em nuvem, uma vez que o quadro de avisos estaria em nossa rede sem fio privada
  • Sem taxas de licença mensais ou software proprietário, além do que já tínhamos (Windows, Office, Powerpoint)
  • Tela de 49 ", no modo retrato / vertical (embora o modo paisagem / horizontal também seja possível e descrito abaixo)
  • Custo desejado: <$ 1000

Conseguimos fazer isso e ficamos abaixo do orçamento. Recentemente, ajudei outra igreja próxima a fazer o mesmo projeto, e o custo total (não incluindo o custo de um eletricista para levar energia ao lugar certo na parede e o trabalho envolvido na montagem) foi inferior a $ 500.

Devido ao baixo custo e essencialmente zero custos contínuos (apenas eletricidade), isso também se encaixaria bem com escolas, bibliotecas, museus, organizações sem fins lucrativos ou outras organizações com orçamento limitado.

O feedback é bem-vindo.

Etapa 1: Lista de Equipamentos

Lista de equipamento
Lista de equipamento
Lista de equipamento
Lista de equipamento
Lista de equipamento
Lista de equipamento

Aqui está uma lista dos equipamentos que usamos. Comentários são adicionados. Tento acessar o site do fabricante sempre que possível, em vez de um varejista.

  • TV / monitor. Quase qualquer TV ou monitor moderno serve, desde que tenha CEC (consulte este artigo na Wikipedia para obter mais informações sobre CEC: https://en.wikipedia.org/wiki/Consumer_Electronics_Control). A maioria dos monitores é feita para ser montada no modo vertical / retrato ou horizontal / paisagem. As TVs são projetadas para serem horizontais, então montá-las verticalmente é um pouco mais complicado. Além disso, muitas TVs são assimétricas de cima para baixo (ou seja, a borda inferior costuma ser maior do que a superior), portanto, montá-la verticalmente pode parecer um pouco estranho. Ainda assim, as TVs são mais baratas no geral, então optamos por uma TV. Claro, se sua orientação preferida for paisagem, não importa. Escolhemos este: TV LED LG 49 ".
  • Montagem de TV: Isso foi complicado, porque compramos uma TV e queríamos montá-la verticalmente. Os itens a serem considerados são o estilo de montagem e se ela será visível, especialmente se a TV for montada verticalmente. O suporte é colocado na parede na mesma orientação como se estivesse montando a TV horizontalmente. Se você optar por montar a TV verticalmente, deverá considerar se os orifícios de montagem dos parafusos no suporte da TV podem acomodar os orifícios de montagem girados na TV. Algumas TVs espaçam seus parafusos de montagem em um padrão quadrado, enquanto outras são um padrão retangular. Pense nisso e certifique-se de que a montagem funcionará no local desejado antes de comprar.
  • Raspberry Pi, caixa, cabos, dissipador de calor, ventilador, etc.: Recomendo que você obtenha a versão mais recente e melhor. Na época em que construímos o projeto, era o Raspberry Pi 3 B +, mas agora o Raspberry Pi 4 B foi lançado. No que diz respeito ao gabinete, cabo de alimentação, dissipadores de calor, ventoinha, decidimos que, como o Raspberry Pi funcionará 24 horas por dia, 7 dias por semana, queríamos um gabinete com ventoinha, embora silenciosa. E ter um cabo de alimentação com um botão liga / desliga embutido facilita a reinicialização do sistema sem ter que puxar o plugue. A outra diferença principal entre o Raspberry Pi 3 B + e o Raspberry Pi 4B é que o 4 B tem um plugue micro-HDMI, o que significa que você precisa de um adaptador (incluído no kit abaixo).

    • Se você for com o Raspberry Pi 3 B +: Kit de estojo Raspberry Pi 3 B + (não inclui Raspberry Pi)
    • Se você for com o Raspberry Pi 4 B: Kit de estojo Raspberry Pi 4 B (não inclui Raspberry Pi)
  • Cabo HDMI: qualquer um está adequado, desde que suporte CEC. Observe que, normalmente, o Raspberry Pi será montado na parede atrás da TV / monitor ou possivelmente conectado à própria TV / monitor, então um cabo curto de 3 pés é provavelmente suficiente. Um cabo muito longo e aparecerá. Considere também onde estão as portas HDMI na TV / monitor e se você pode considerar uma extremidade do cabo de 90 graus (por exemplo, se as portas HDMI estiverem em um lado).
  • Cartão MicroSD. Isso também não importa muito. Escolhemos 32 GB em vez de 16 GB padrão, apenas para ter espaço extra para software adicional, se quiséssemos, e para ter um local para armazenar várias apresentações. Escolhemos este: Cartão MicroSD SanDisk Ultra PLUS 32GB. Observe que é mais fácil se você comprar um cartão MicroSD com NOOBS já instalado, como este: Cartão SD com NOOBS. Eu não fiz isso, mas você pode economizar uma etapa se o fizer. Veja aqui para mais informações: NOOBS

Uma observação sobre o CEC: o CEC (Consumer Electronics Control) permite que alguns componentes controlem uns aos outros por meio do cabo HDMI. Por exemplo, um DVD player pode ligar / desligar a TV conectada por meio do cabo HDMI se ambos forem compatíveis com CEC. Isso é útil em nosso caso, pois o Raspberry Pi pode ligar / desligar a TV / monitor conforme desejar. Por exemplo, em um ambiente de igreja, gostaríamos de ter o monitor ligado apenas durante as horas em que a igreja está aberta, e isso varia de acordo com o dia da semana. O CEC permite que o Pi ligue e desligue a TV em um cronograma arbitrariamente complexo.

Etapa 2: montar a caixa de Pi

Monte a caixa do Pi
Monte a caixa do Pi
Monte a caixa do Pi
Monte a caixa do Pi
Monte a caixa do Pi
Monte a caixa do Pi

A montagem é bastante direta. Cole os dissipadores de calor nas fichas de tamanho correspondente no Raspberry Pi e monte a caixa camada por camada. Não se esqueça de remover as finas folhas de proteção de plástico de cada camada.

Etapa 3: Instale o Raspbian

Instale o Raspbian
Instale o Raspbian

Há um excelente guia no site Raspberry Pi. Siga essas instruções para configurá-lo.

Configurando seu Raspberry Pi

Usei o Raspbian Lite, pois não possui aplicativos extras que você não precisará para este projeto.

Etapa 4: adicionar software padrão e personalizado

Assim que o NOOBS instalar o Raspbian, na primeira vez que você fizer login, você será solicitado a fornecer informações como idioma, fuso horário, etc. Ele também solicitará a rede WiFi e informações de senha, a menos que você esteja em uma conexão com fio. Por fim, ele baixará e instalará todas as atualizações do Raspbian. Ajuda se você estiver na mesma conexão de Internet da configuração final, mas não precisa estar. Ou seja, você pode fazer esta etapa em casa antes de configurar no local final. Lembre-se de configurar a nova conexão com a Internet antes da reinicialização final na última etapa.

Abra uma janela de terminal (clique no ícone retangular preto próximo ao canto superior esquerdo da tela).

Primeiro, verificamos novamente se há mais atualizações do Raspbian. Digite as seguintes linhas, uma de cada vez

atualização do apt sudo

atualização do apt sudo

(diga "Y" se perguntar se você deseja instalar atualizações).

Em seguida, instalamos o Samba, que permite o compartilhamento de pastas com a (s) máquina (s) Windows na rede.

sudo apt instalar samba samba-common-bin smbclient cifs-utils

Em seguida, instalamos o fbi. fbi é o utilitário unix que exibe gráficos em uma tela que não executa um gerenciador de janelas.

sudo apt install fbi

Em seguida, instalamos ferramentas inotify. inotify-tools permite que a apresentação de slides observe a pasta compartilhada para quaisquer alterações.

sudo apt install inotify-tools

Em seguida, instalamos o cec-utils. O cec-utils permite que o Raspberry Pi ligue e desligue a TV por meio do cabo HDMI.

sudo apt install cec-utils

Em seguida, você precisará baixar os pequenos utilitários que escrevi para reproduzir a apresentação de slides.

git clone

Isso irá buscar o código e colocá-lo em um diretório chamado raspi_slideshow.

Agora todo o software está disponível no Raspberry Pi. As próximas etapas passam pela configuração.

Etapa 5: configurar a pasta compartilhada

Por padrão, o código da apresentação de slides procura um diretório (pasta) / compartilhado / Apresentação.

Precisamos criar esse diretório. Como está no nível raiz, precisamos de permissões de raiz, portanto, um sudo está em ordem. Pode ser necessário digitar a senha (o padrão é raspberry) ao executar este comando:

sudo mkdir -p / shared / Apresentação

Em seguida, precisamos tornar isso legível e gravável por qualquer pessoa neste Pi. Digite o seguinte comando:

sudo chmod a + rwx / shared / Apresentação

Isso o torna visível apenas neste Pi. Em seguida, precisamos compartilhar esta pasta com o mundo (na verdade, apenas outras máquinas na mesma rede). É por isso que recomendamos que seja em uma rede Wi-Fi privada (protegida por senha) ou uma rede local com fio.

Quando instalamos o samba na etapa anterior, ele criou um arquivo padrão /etc/samba/smb.conf

Precisamos adicionar um monte de linhas ao final desse arquivo. As linhas estão no arquivo raspi_slideshow / add_to_smb.conf

A maneira mais fácil de fazer isso é a seguinte:

sudo bash

cat raspi_slideshow / add_to_smb.conf >> /etc/samba/smb.conf exit

Basicamente, isso concatena o arquivo add_to_smb.conf ao final de /etc/samba/smb.conf

Você pode optar por fazê-lo por meio de um editor como o nano, se preferir, mas é uma boa quantidade de digitação.

Basicamente, ele compartilha o diretório / shared como um diretório que pode ser lido e gravado por qualquer pessoa na rede local. Não vou explicar como protegê-lo aqui, mas se você quiser que ele seja protegido (para exigir uma senha para editar), você pode ler sobre o Samba e alterar as configurações de acordo.

Etapa 6: definir as configurações de ativação / desativação do monitor

Usamos o cron para ligar e desligar a TV / monitor em horários programados. Cron é um utilitário do Linux que executa tarefas em horários programados. Se você deseja que sua TV / monitor funcione 24 horas por dia, 7 dias por semana ou deseja ligá-lo e desligá-lo manualmente, pule esta etapa.

Copie o arquivo crontab de exemplo do diretório raspi_slideshow para o diretório inicial.

cp raspi_slideshow / crontab_example.pi crontab.pi

O arquivo crontab_example.pi é um exemplo que mostra como funciona esse tipo de arquivo. Há bastante documentação na Wikipedia e em outros lugares:

Agora vamos editá-lo. Ajuda ter sua agenda já planejada. O exemplo de programação é

  • Domingo: às 7h, off às 21h
  • Quarta-feira: às 8h, folga às 21h
  • Sábado: às 7h, off às 21h
  • Outros dias: ligado às 8h, desligado às 17h

Gosto do nano porque vem instalado com Raspbian e é fácil de usar. Você pode usar o vi ou qualquer outro editor.

nano crontab.pi

Edite o arquivo para especificar horários de ativação / desativação para cada dia. Use as setas do teclado para se mover. Backspace para excluir, digite para inserir. Quando terminar, pressione Control-O para salvar (você terá que pressionar "enter" para confirmar o nome do arquivo) e Control-X para sair do nano.

Depois de ter seu arquivo cron da maneira que deseja, diga ao Raspbian que deseja executá-lo:

crontab crontab.pi

Se você quiser mudar sua programação, você pode editar $ HOME / crontab.pi e reexecutar o comando crontab imediatamente acima. Isso substituirá sua programação antiga pela nova.

Etapa 7: definir as configurações de exibição

Definir as configurações de exibição
Definir as configurações de exibição

Estamos quase terminando! Precisamos definir as configurações de exibição. fbi é o utilitário que usamos para exibir os slides. Ele lê suas configurações do arquivo.fbirc no diretório inicial.

Primeiro, certifique-se de que estamos no diretório inicial.

cd $ HOME

Em seguida, copie o arquivo do diretório raspi_slideshow para a página inicial

cp raspi_slideshow /.fbirc.

Você não deve precisar editar o arquivo. No entanto, se você escolher, as três configurações de interesse são:

random = false

blend-msecs = 500

tempo limite = 8

A linha aleatória determina se fbi randomiza a ordem do slide. verdadeiro significa que os slides são aleatórios, falso significa que não. Como queríamos algum controle sobre a ordem dos slides, definimos como false.

A linha blend-msecs diz quantos milissegundos (1000 = 1 segundo) cada transição dura. Um valor de 0 significa que os slides mudam instantaneamente de um para o outro. Nossa configuração de 500 significa que os slides se misturam em um período de 0,5 segundos.

O tempo limite é o tempo (em segundos) que cada slide é exibido antes da transição para o próximo. Você pode ajustar isso se quiser que os slides sejam mais longos ou mais curtos. Lembre-se de que isso se aplica igualmente a todos os slides. Não há como fazer com que alguns slides pareçam mais longos e outros mais curtos.

Girar a tela

Se você tiver sua TV / monitor montado verticalmente, como fazemos, você precisará girar a tela 90 graus ou 270 graus. Se você tem sua TV / monitor montado horizontalmente, pode pular o resto desta etapa.

Use o nano novamente. Desta vez, você precisa executar como root, então você precisará sudo, o que pode exigir que você digite sua senha novamente (o padrão é raspberry)

sudo nano /boot/config.txt

Use a seta para baixo para ir até o final deste arquivo. Adicione a seguinte linha ao final do arquivo:

display_rotate = 1

Isso girará a tela 90 graus. Se após a montagem, seu monitor estiver de cabeça para baixo, altere 1 para 3.

Basicamente display_rotate = 0 (sem rotação), 1 (90 graus), 2 (180 graus), 3 (270 graus)

Na imagem acima, definimos display_rotate = 1 e tivemos que voltar e alterá-lo para display_rotate = 3. Muito mais fácil do que reinstalar a TV!

Etapa 8: alterar a senha e configurar a execução automática

Alterar senha e configurar a execução automática
Alterar senha e configurar a execução automática
Alterar senha e configurar a execução automática
Alterar senha e configurar a execução automática

Neste ponto, estamos quase terminando!

Clique no menu framboesa no canto superior esquerdo, selecione Preferências-> Configuração Raspberry Pi

Isso abre uma caixa de diálogo. Clique em "Alterar senha …" e altere-a para algo de que você se lembrará!

Você pode escolher alterar o nome do sistema (campo Nome do host).

Certifique-se de clicar em Boot "To CLI"

Definir login automático ("Faça login como usuário 'pi'")

Agora você precisa configurar a apresentação de slides para ser executada ao inicializar. A maneira mais fácil é adicionar uma linha ao seu arquivo.bashrc. Abrindo nosso editor nano:

nano.bashrc

Seta para baixo até o final do arquivo e adicione a seguinte linha:

python3 raspi_slideshow / play_slideshow.py

Essas configurações significam que:

  • Sempre que for reinicializado, o Raspberry Pi fará o login automaticamente como usuário pi
  • Não iniciará um gerenciador de janelas, mas apenas rodará na tela ("Boot to CLI")
  • Ele iniciará o shell bash, que lê o arquivo.bashrc, e a última linha desse arquivo diz para executar a apresentação de slides.

Depois disso, as reinicializações NÃO iniciarão o gerenciador de janelas e a apresentação de slides será executada automaticamente. Você pode interromper a apresentação de slides pressionando Control-C durante a apresentação. Isso o levará de volta ao prompt do bash ($).

Se você deseja iniciar o gerenciador de janelas a partir deste ponto (para depuração ou manipulação mais fácil das configurações), você pode fazê-lo digitando "startx" na linha de comando.

Etapa 9: Use (Configurando a Máquina Windows)

Em uso real, nosso Raspberry Pi se conecta à nossa rede sem fio privada na inicialização. Ele compartilha seu diretório / shared (e tudo abaixo) com a rede. Para ver esta pasta em uma máquina Windows, certifique-se de estar na mesma rede.

Presumo que você se conectará a ele de um computador Windows em um escritório. Para Windows 7 ou Windows 10, abra um Explorador de Arquivos para visualizar os arquivos / pastas em seu computador. Clique com o botão direito do mouse à esquerda onde está escrito "Computador" ou "Meu computador" e selecione "Mapear unidade de rede …"

Isso abrirá uma caixa de diálogo. Escolha a letra, por exemplo "Z:" para o qual você deseja mapear sua unidade. Em seguida, no campo Pasta, digite:

{nome-do-seu-computador-Pi} compartilhado

onde {nome-do-seu-Pi-computador} é o nome que você deu ao seu pi do Raspberry na etapa anterior (veja a imagem anterior com a caixa de diálogo).

Certifique-se de clicar em "Reconectar no login". É possível que, se o Raspberry Pi for desligado quando o computador com Windows for inicializado, essa etapa precise ser repetida (ou o computador com Windows reiniciado) para ver a pasta compartilhada.

Se você optar por proteger sua pasta com senha, poderá adicionar credenciais selecionando "Conectar usando credenciais diferentes" e inserindo o nome de usuário / senha do Raspberry Pi.

Agora, quando quiser que os slides entrem na sua apresentação, copie as imagens individuais dos slides (*) para a pasta Apresentação.

O script monitorará e exibirá SOMENTE o conteúdo da pasta Apresentação e nada no nível acima (compartilhado). Portanto, às vezes usamos o truque de colocar slides comumente usados no nível superior e, em seguida, arrastá-los conforme necessário para dentro ou para fora da pasta Apresentação.

Lembre-se, quando qualquer coisa na pasta Apresentação muda (arquivos são adicionados, excluídos ou modificados), o script da apresentação de slides espera 2 minutos (120 segundos, configurável em play_slideshow.py, pesquise por wait_time) antes de redefinir e exibir os novos slides. Isso dá à pessoa tempo para fazer todas as alterações necessárias sem redefinir após cada novo arquivo ser adicionado.

Imagens de slides individuais são arquivos jpeg, gif ou png que representam um único slide. A maneira mais fácil de gerá-los é usando o Microsoft PowerPoint ou um programa semelhante. Você pode gerar quantos slides desejar no Microsoft PowerPoint e salvá-los como uma apresentação do PowerPoint. Em seguida, clique em Arquivo-> Exportar-> Alterar tipo de arquivo e salve como PNG ou JPEG. Isso produzirá os slides como arquivos individuais, por exemplo, slide1.png, slide2.png, etc. Você pode então arrastar e soltar arquivos individuais em Z: / Apresentação (ou qualquer letra de unidade que você usou). Observe que a apresentação é organizada em ordem alfabética (não numérica), então slide11.png vem depois de slide1.png e antes de slide2.png. É claro que você pode renomear os slides antes de copiá-los para a pasta de rede. Certifique-se de que eles mantêm sua extensão (por exemplo,.png). O script da apresentação de slides atualmente procura apenas arquivos com as seguintes extensões:.png,.png,.gif,.gif,.jpg,-j.webp

Etapa 10: Solução de problemas

A maioria dos problemas pode ser resolvida pela velha solução "tente desligar e ligar novamente".

Se o seu Raspberry Pi não estiver se conectando, não atualizando ou parece estar geralmente travado, tente desligá-lo novamente.

Se sua máquina Windows perder a unidade de rede mapeada, tente desligá-la novamente ou adicionar manualmente a unidade novamente.

Se você tiver outras dúvidas / problemas, poste nos comentários e atualizarei esta etapa com problemas comuns e suas soluções.

Etapa 11: Conclusão e Trabalho Futuro

FEITO

Neste ponto, você pode reiniciar o Raspberry Pi, por meio dos menus ou com o botão liga / desliga no cabo de alimentação. A coisa boa sobre esta configuração é que sempre que o Pi inicializa (falha de energia, travamento, qualquer coisa), ele inicia no modo de apresentação de slides, então você pode reiniciar à vontade e deve se recuperar bem. Assim que estiver instalado e funcionando, você pode basicamente "configurá-lo e esquecê-lo", exceto as atualizações dos slides. Em nosso caso, nosso administrador de igreja atualiza os slides semanalmente, e este sistema tem funcionado perfeitamente por cerca de um ano.

Por favor, dê feedback! Sou receptivo a consertar bugs ou imprecisões. Eu entendo que existem muitas maneiras diferentes de fazer as coisas, então não estou animado em responder a perguntas como "por que você usou python em vez da {linguagem de programação X}?" Ou sugestões que são funcionalmente iguais (como "sudo apt" todos os pacotes de uma vez em vez de um de cada vez). No entanto, melhorias funcionais são sempre bem-vindas! Tento tornar isso o mais funcional e útil possível, ao mesmo tempo que é fácil de instalar e manter. Eu particularmente gosto do feedback daqueles que se beneficiaram com este Instructable. Fico feliz em ajudar, se puder.

Trabalho futuro

Estou começando a trabalhar em uma versão que permitirá que os arquivos de vídeo (com som) sejam misturados com os slides estáticos. Acho que posso usar vlc para isso na linha de comando. Vou atualizar isso se conseguir fazer com que funcione. Fique à vontade para fazer sugestões!

Recomendado: