IoT

Criando um QUIOSQUE WEB com RASPBERRY PI

Escrito por Douglas Baiocco. Publicado em IoT.

Neste artigo iremos ver os passos para criar um QUIOSQUE (tela com informações, página WEB, imagem, etc) com um RASPBERRY PI. Essa solução é bastante útil, já que podemos aproveitar este aparelho extremamente barato, fácil de esconder e fácil de manter para apresentar as mais diversas informações em TVs, projetores e demais.

Para o nosso exemplo, iremos usar um RASPBERRY PI ZERO W, mas nada impede você de usar qualquer RASPBERRY PI. Eu tinha um Zero sobrando e quis aproveitá-lo. É claro que o desempenho usando um modelo mais avançado melhora muito, mas para exibir páginas estáticas o PI Zero é perfeito.

Instalando o RASPBIAN

Primeiramente devemos instalar o RASPBIAN no RASPBERRY. Baixe a imagem do RASPBIAN LITE (https://www.raspberrypi.org/downloads/raspbian/) e grave-o no cartão SD. Recomendo usar o BALENA ETCHER ou o Win32 Disk Imager. Não irei descrever o processo de instalação do RASPBIAN, pois tem muito material na internet. Se tiver dúvidas, use este link:

https://www.techtudo.com.br/dicas-e-tutoriais/noticia/2016/10/veja-como-instalar-o-raspbian-no-raspberry-pi.html

Após a instalação do RASPBIAN no SD, precisamos preparar nosso Sistema Operacional.

 

Habilitar o WI-FI

Devemos habilitar o WI-FI para realizar acessos a páginas web sem depender de cabos. Para isso, siga este link:

http://ajudadigital.com.br/index.php/linux/163-configurar-a-rede-wi-fi-no-raspbian-buster-com-wpa-supplicant-conf

 

Habilitar o SSH

Devemos habilitar também o SSH para configurar o Raspbian remotamente. Siga este link:

http://ajudadigital.com.br/index.php/linux/162-habilitar-o-ssh-no-raspbian-buster-release-setembro-2019

 

Habilitar o autologin

Para que o quiosque possa ligar sem que seja necessário digitar um usuário e uma senha, o Raspbian deve ligar e efetuar o autologin. Para habilitar esta configuração, entre no raspi-config:

$sudo raspi-config

image001

 

Entre na opção Boot Options e escolha o primeiro item (B1 Desktop / CLI):
image002

 

Selecione a opção B2 Console Autologin e pressione Enter:
image003

 

Após o retorno a tela inicial, selecione Finish.

 

Instalando pacotes

 

Após estes processos, deixe os pacotes de instalação do RASPBIAN atualizados, rodando um UPDATE:

$sudo apt-get update

 

Após isso, iremos instalar os pacotes necessários para o nosso quiosque. Digite o comando abaixo:

$sudo apt-get install -y midori matchbox-window-manager xserver-xorg x11-xserver-utils unclutter xinit

 image004

 

Preparando o ambiente

Agora iremos preparar o Raspbian. Use os comandos abaixo para adicionar o grupo tty ao usuário pi para que este possa manipular o dispositivo /dev/ttyX e ajustar as configurações a cada boot:

$sudo gpasswd -a pi tty

$sudo sed -i '/^exit 0/c\chmod g+rw /dev/tty?\nexit 0' /etc/rc.local

 

Script de início

Vamos criar agora o Script de início do nosso quiosque. Digite o seguinte comando:

$nano /home/pi/startkiosk.sh

 

Adicione o seguinte conteúdo:

#!/bin/bash

# desabilitar o DPMS.

xset -dpms

# desabilitar a proteção de tela

xset s off

# impedir o desligamento da tela

xset s noblank

# desabilitar o ponteiro do mouse

unclutter &

# iniciar o gerenciador de janelas

matchbox-window-manager -use_cursor no -use_titlebar no  &

# abrir o navegador na página do google

midori -e Fullscreen -a http://www.google.com

 

 

Após isso, salve o arquivo e use o comando abaixo para torná-lo executável:

$chmod +x /home/pi/startkiosk.sh

 

Para terminar, edite o arquivo /home/pi/.bashrc, com o seguinte comando:

$nano /home/pi/.bashrc

Adicione ao final do arquivo o seguinte conteúdo:

if [ -z "${SSH_TTY}" ]; then

  xinit ~/startkiosk.sh

fi

Isso fará com que o X inicie apenas se logado localmente e não por SSH.

 

Conclusão

Após esses passos teremos um RAPBERRY que inicia sozinho, abre um X e entra na página estipulada. Podemos personalizar para exibir páginas especificas, preferencialmente usando WEB. O único problema é que o PI ZERO W é bastante limitado. Carregar páginas muito pesadas fará com que ele demore a exibir. Nestes casos, use um PI 3. Veja um exemplo que temos aqui:

 
image005

 

Referências:

https://www.matteomattei.com/web-kiosk-with-raspberry-pi-and-read-only-sd/