Projeto Full Stack Raspberry Pi -Parte 1

Arexxuru
6 min readFeb 2, 2021

Ao final do projeto você vai conseguir monitorar a temperatura e exibi-la em uma página web usando apenas o Raspberry Pi!

Seja bem-vindo ao Projeto Full Stack Raspberry Pi, me chamo Alexandre Colauto sou formado em engenharia eletrônica e estou desenvolvendo um Smart Garden. Uma parte deste projeto será uma interface web para acompanhar o crescimento da planta. É aí que entra o Raspberry Pi.

O que é o projeto Full Stack?

O projeto consiste em realizar a leitura de um sensor de temperatura e umidade DTH22 e apresentar as informações em uma página web utilizando o Raspberry pi.

Para conseguir fazer isso vamos utilizar o Raspbian, (uma versão do Ubuntu para o raspberry pi) no modo headless, ou seja, sem precisar de um monitor, utilizando o protocolo ssh no programa putty.

No Raspbian vamos instalar algumas dependências para ler os pinos GPIO do Raspberry Pi, nesses pinos estará conectado o DTH22 que ira realizar a leitura de temperatura e umidade do laboratório (meu quarto no caso).

O próximo passo será instalar os componentes do servidor web, neste projeto vamos utilizar o Flask, que é um framework web em python, onde vamos escrever o aplicativo que será hospedado no uWSGI, que cuida da construção dos serviços de hospedagem, e que por fim será hospedado pelo NGINX, que irá disponibilizar o acesso ao aplicativo através de uma pagina web.

Simples né? Mas serve como base para várias outras coisas, vale muito a pena!

Passo 0 —Requerimentos

Para o projeto vamos precisar de:

  • Raspberry Pi
  • Sensor de temperatura e umidade DTH22
Sensor de temperatura dth22

O Raspberry Pi não precisa ser de nenhum modelo em específico, todos eles vão funcionar, ate mesmo o Raspberry Pi W, a única diferença será na velocidade de compilação.

O projeto não consome muito espaço de armazenamento, logo um cartão de 4 GB deve rodar o sistema tranquilamente. Vale lembra que você vai precisar de uma fonte para o seu Raspberry Pi, mas o sensor não consome muita corrente, um carregador desses de celular é o suficiente para alimentar o Raspberry Pi.

É interessante ter também uma protoboard e alguns jumpers para montar o circuito sem precisar soldar nada.

Passo 1-Instalando o SO

A primeira coisa a ser feita no nosso projeto é instalar o Raspbian, o sistema operacional que o Raspberry Pi vai utilizar. Para fazer a instalação temos que baixar a imagem do Raspbian do site oficial:

Neste link temos que baixar o Rasberri Pi OS Lite.

Escolhemos o OS Lite por que ele não possui ambiente gráfico, então é muito mais leve, e com processamento mais do que suficiente para o nosso projeto.

Agora temos que gravar esta imagem em nosso cartão SD, para isto utilizamos o Etcher, que pode ser baixado gratuitamente no link oficial:

Uma vez instalado é bem intutivo de utilizar o Etcher:

-Selecionamos “Flash from file”

-Escolhemos a imagem que acabamos de baixar do Raspberry OS Lite

-Em “Select target” escolhemos o cartão SD (que deve estar conectado ao computador nesse momento)

-Flash!

E é só isso, o Etcher cuida de toda a parte de formatação e diskpart para a gente.

Configurações Adicionais

Assim que o Etcher finalizar nosso sistema operacional já está pronto, mas vamos adicionar mais duas configurações antes de fazer o primeiro boot, vamos habilitar o ssh e configurar o WiFi do nosso Raspberry Pi (lembrando que apenas os modelos 3,4 e W que possuem módulo WiFi integrado).

SSH

O protocolo Secure Shell é uma maneira de utilizar nosso Raspberry Pi apenas pelo IP, sem precisar ter nenhum periférico ou monitor ligado a ele.

Para habilitar o ssh é bem simples.

Basta criar um arquivo com o nome ssh e colocar na pasta root do cartao SD

O arquivo não precisa ter nenhuma extensão nem nada escrito, apenas deve ter o nome de ssh.

Rede WiFi

Para configurar a rede WiFi e fazer o Raspberry Pi se conectar automaticamente a rede temos que criar um arquivo chamado:

wpa_supplicant.conf

e dentro deste arquivo preenchemos com:

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=<BR>

network={
ssid="<Nome da Sua Rede WiFi>"
psk="<Senha Da Sua Rede Wifi>"
}

É importante manter as aspas no ssid e no psk.

(caso você esteja fora do Brasil, altere o “country” para as 2 letras do seu país)

Este arquivo wpa_supplicant.conf também vai na pasta root com o arquivo ssh que criamos anteriormente.

Com todos os arquivos na pasta root, podemos remover o cartão SD do nosso computador e colocá-lo no Raspberry Pi para o primeiro boot.

Programas adicionais

Neste ponto do projeto nós queremos baixar mais dois programas que vão nos ajudar a se comunicar com o Raspberry Pi.

O primeiro deles é o Putty

Putty

O putty é um programa do Windows que realiza comunicação SSH com nosso Raspberry Pi através do IP.

(Se voce tiver utilizando MacOs ou Linux consegue fazer o ssh direto do terminal)

O putty também é bem simples de instalar, pode seguir as configurações recomendadas e não é preciso alterar nada.

Quando você abrir o Putty pela primeira vez após ter instalado vai encontrar esta tela:

Tela Principal Do Putty

Para se conectar só precisamos do IP do nosso Raspberry Pi e para isso vamos precisar do próximo programa

O segundo programa é o Advanced IP Scanner

Program Screen Advanced Ip Scanner

Este programa vai nos ajudar a descobrir qual é o IP do nosso Raspberry Pi, e com o IP conseguimos conectar via SSH com o Putty.

Se tudo foi preenchido corretamente devemos encontrar alguma coisa parecida com isso em nosso Advanced IP Scaner:

IP do Raspberry PI

em seguida é só colocar o IP no Putty e clicar em “Open” e logo aparecerá uma tela como esta:

Starting Screen of raspberry pi
Tela inicial de login

Quando for pedido o login vamos digitar “pi”

login as: pi

e a senha vai ser “raspberry”

pi@192.168.1.27’s password: raspberry

Estes são as credenciais padrão do Pi, você pode alterar sua senha digitando passwd no prompt e ele ira realizar a alteração da senha para você.

Este vai ser o fim da primeira parte do projeto, fique atento para a segunda parte, e se quiser mais informações você pode acompanhar a série no YouTube sobre este projeto

Ou ainda na Twich toda Segunda Quarta e Sexta caso queira interagir e acompanhar ao vivo enquanto o projeto cresce. Se algo não ficou claro me deixe saber, toda pergunta é bem-vinda e juro que vou tentar ajudar o máximo que eu puder.

Obrigado por sua paciência e pelo seu tempo.

--

--

Arexxuru

Mestre em engenharia eletronica, streamer e Dj nas horas vagas