17 KiB
Raspberry Pi
O Raspberry Pi é um computador de placa única. Pode adicionar sensores e atuadores utilizando uma ampla gama de dispositivos e ecossistemas. Para estas lições, será utilizado um ecossistema de hardware chamado Grove. Vai programar o seu Pi e aceder aos sensores Grove utilizando Python.
Configuração
Se estiver a usar um Raspberry Pi como o seu hardware IoT, tem duas opções: pode trabalhar diretamente no Pi ao longo destas lições ou pode conectar-se remotamente a um Pi 'headless' e programar a partir do seu computador.
Antes de começar, também precisa de ligar o Grove Base Hat ao seu Pi.
Tarefa - configuração
Instale o Grove Base Hat no seu Pi e configure-o.
-
Conecte o Grove Base Hat ao seu Pi. O conector do hat encaixa sobre todos os pinos GPIO do Pi, deslizando até ao fundo para se fixar firmemente na base. Ele cobre o Pi.
-
Decida como pretende programar o seu Pi e siga para a secção correspondente abaixo:
Trabalhar diretamente no seu Pi
Se quiser trabalhar diretamente no seu Pi, pode usar a versão desktop do Raspberry Pi OS e instalar todas as ferramentas necessárias.
Tarefa - trabalhar diretamente no seu Pi
Prepare o seu Pi para desenvolvimento.
- Siga as instruções no guia de configuração do Raspberry Pi para configurar o seu Pi, conectá-lo a um teclado/ratinho/monitor, ligá-lo à sua rede Wi-Fi ou Ethernet e atualizar o software.
Para programar o Pi utilizando os sensores e atuadores Grove, precisará de instalar um editor para escrever o código do dispositivo, bem como várias bibliotecas e ferramentas que interagem com o hardware Grove.
-
Assim que o seu Pi reiniciar, abra o Terminal clicando no ícone Terminal na barra de menu superior ou escolha Menu -> Acessórios -> Terminal.
-
Execute o seguinte comando para garantir que o sistema operativo e o software instalado estão atualizados:
sudo apt update && sudo apt full-upgrade --yes
-
Execute os seguintes comandos para instalar todas as bibliotecas necessárias para o hardware Grove:
sudo apt install git python3-dev python3-pip --yes git clone https://github.com/Seeed-Studio/grove.py cd grove.py sudo pip3 install . sudo raspi-config nonint do_i2c 0
Isto começa por instalar o Git, juntamente com o Pip para instalar pacotes Python.
Uma das funcionalidades mais poderosas do Python é a capacidade de instalar pacotes Pip - estes são pacotes de código escritos por outras pessoas e publicados na Internet. Pode instalar um pacote Pip no seu computador com um único comando e utilizá-lo no seu código.
Os pacotes Python do Seeed Grove precisam de ser instalados a partir do código-fonte. Estes comandos irão clonar o repositório contendo o código-fonte deste pacote e instalá-lo localmente.
💁 Por padrão, quando instala um pacote, ele fica disponível em todo o computador, o que pode causar problemas com versões de pacotes - como uma aplicação depender de uma versão que deixa de funcionar quando instala uma nova versão para outra aplicação. Para contornar este problema, pode usar um ambiente virtual Python, essencialmente uma cópia do Python numa pasta dedicada, onde os pacotes Pip são instalados apenas nessa pasta. No entanto, não usará ambientes virtuais no seu Pi. O script de instalação do Grove instala os pacotes Python do Grove globalmente, então, para usar um ambiente virtual, teria de configurá-lo e reinstalar manualmente os pacotes Grove nesse ambiente. É mais fácil usar pacotes globais, especialmente porque muitos programadores de Pi preferem regravar um cartão SD limpo para cada projeto.
Por fim, isto ativa a interface I2C.
-
Reinicie o Pi utilizando o menu ou executando o seguinte comando no Terminal:
sudo reboot
-
Assim que o Pi reiniciar, reabra o Terminal e execute o seguinte comando para instalar o Visual Studio Code (VS Code) - este será o editor utilizado para escrever o código do dispositivo em Python.
sudo apt install code
Após a instalação, o VS Code estará disponível na barra de menu superior.
💁 Está livre para usar qualquer IDE ou editor Python de sua preferência para estas lições, mas as instruções serão baseadas no uso do VS Code.
-
Instale o Pylance. Esta é uma extensão para o VS Code que fornece suporte à linguagem Python. Consulte a documentação da extensão Pylance para obter instruções sobre como instalar esta extensão no VS Code.
Acesso remoto para programar o Pi
Em vez de programar diretamente no Pi, pode configurá-lo para funcionar como 'headless', ou seja, sem estar conectado a um teclado/ratinho/monitor, e programá-lo a partir do seu computador utilizando o Visual Studio Code.
Configurar o sistema operativo do Pi
Para programar remotamente, o sistema operativo do Pi precisa de ser instalado num cartão SD.
Tarefa - configurar o sistema operativo do Pi
Configure o sistema operativo do Pi para funcionar como 'headless'.
-
Faça o download do Raspberry Pi Imager na página de software do Raspberry Pi OS e instale-o.
-
Insira um cartão SD no seu computador, utilizando um adaptador, se necessário.
-
Abra o Raspberry Pi Imager.
-
No Raspberry Pi Imager, selecione o botão CHOOSE OS, depois escolha Raspberry Pi OS (Other) e, em seguida, Raspberry Pi OS Lite (32-bit).
💁 O Raspberry Pi OS Lite é uma versão do Raspberry Pi OS sem a interface gráfica ou ferramentas baseadas em UI. Estas não são necessárias para um Pi 'headless', tornando a instalação mais leve e o tempo de arranque mais rápido.
-
Selecione o botão CHOOSE STORAGE e escolha o seu cartão SD.
-
Abra as Opções Avançadas pressionando
Ctrl+Shift+X
. Estas opções permitem pré-configurar o Raspberry Pi OS antes de gravá-lo no cartão SD.-
Marque a caixa Enable SSH e defina uma palavra-passe para o utilizador
pi
. Esta será a palavra-passe utilizada para iniciar sessão no Pi mais tarde. -
Se planeia conectar-se ao Pi via Wi-Fi, marque a caixa Configure WiFi e insira o SSID e a palavra-passe da sua rede Wi-Fi, além de selecionar o seu país Wi-Fi. Não precisa de fazer isto se for usar um cabo Ethernet. Certifique-se de que a rede à qual se conecta é a mesma do seu computador.
-
Marque a caixa Set locale settings e defina o seu país e fuso horário.
-
Clique no botão SAVE.
-
-
Clique no botão WRITE para gravar o sistema operativo no cartão SD. Se estiver a usar macOS, será solicitado que insira a sua palavra-passe, pois a ferramenta subjacente que grava imagens de disco requer acesso privilegiado.
O sistema operativo será gravado no cartão SD e, ao concluir, o cartão será ejetado pelo sistema operativo, e será notificado. Remova o cartão SD do seu computador, insira-o no Pi, ligue o Pi e aguarde cerca de 2 minutos para que ele inicie corretamente.
Conectar-se ao Pi
O próximo passo é aceder remotamente ao Pi. Pode fazer isso utilizando ssh
, disponível no macOS, Linux e versões recentes do Windows.
Tarefa - conectar-se ao Pi
Aceda remotamente ao Pi.
-
Abra um Terminal ou Prompt de Comando e insira o seguinte comando para se conectar ao Pi:
ssh pi@raspberrypi.local
Se estiver a usar uma versão mais antiga do Windows que não tenha
ssh
instalado, pode usar o OpenSSH. Pode encontrar as instruções de instalação na documentação de instalação do OpenSSH. -
Isto deve conectar-se ao seu Pi e pedir a palavra-passe.
A capacidade de encontrar computadores na sua rede utilizando
<hostname>.local
é uma adição relativamente recente ao Linux e Windows. Se estiver a usar Linux ou Windows e receber erros sobre o nome do host não ser encontrado, precisará de instalar software adicional para ativar a rede ZeroConf (também referida pela Apple como Bonjour):-
Se estiver a usar Linux, instale o Avahi utilizando o seguinte comando:
sudo apt-get install avahi-daemon
-
Se estiver a usar Windows, a forma mais fácil de ativar o ZeroConf é instalar o Bonjour Print Services para Windows. Também pode instalar o iTunes para Windows para obter uma versão mais recente da utilidade (que não está disponível de forma independente).
💁 Se não conseguir conectar-se utilizando
raspberrypi.local
, pode usar o endereço IP do seu Pi. Consulte a documentação sobre endereços IP do Raspberry Pi para instruções sobre várias formas de obter o endereço IP. -
-
Insira a palavra-passe que definiu nas Opções Avançadas do Raspberry Pi Imager.
Configurar o software no Pi
Depois de se conectar ao Pi, precisa de garantir que o sistema operativo está atualizado e instalar várias bibliotecas e ferramentas que interagem com o hardware Grove.
Tarefa - configurar o software no Pi
Configure o software instalado no Pi e instale as bibliotecas Grove.
-
A partir da sua sessão
ssh
, execute o seguinte comando para atualizar e reiniciar o Pi:sudo apt update && sudo apt full-upgrade --yes && sudo reboot
O Pi será atualizado e reiniciado. A sessão
ssh
será encerrada quando o Pi for reiniciado, então aguarde cerca de 30 segundos e reconecte-se. -
A partir da sessão
ssh
reconectada, execute os seguintes comandos para instalar todas as bibliotecas necessárias para o hardware Grove:sudo apt install git python3-dev python3-pip --yes git clone https://github.com/Seeed-Studio/grove.py cd grove.py sudo pip3 install . sudo raspi-config nonint do_i2c 0
Isto começa por instalar o Git, juntamente com o Pip para instalar pacotes Python.
Uma das funcionalidades mais poderosas do Python é a capacidade de instalar pacotes Pip - estes são pacotes de código escritos por outras pessoas e publicados na Internet. Pode instalar um pacote Pip no seu computador com um único comando e utilizá-lo no seu código.
Os pacotes Python do Seeed Grove precisam de ser instalados a partir do código-fonte. Estes comandos irão clonar o repositório contendo o código-fonte deste pacote e instalá-lo localmente.
💁 Por padrão, quando instala um pacote, ele fica disponível em todo o computador, o que pode causar problemas com versões de pacotes - como uma aplicação depender de uma versão que deixa de funcionar quando instala uma nova versão para outra aplicação. Para contornar este problema, pode usar um ambiente virtual Python, essencialmente uma cópia do Python numa pasta dedicada, onde os pacotes Pip são instalados apenas nessa pasta. No entanto, não usará ambientes virtuais no seu Pi. O script de instalação do Grove instala os pacotes Python do Grove globalmente, então, para usar um ambiente virtual, teria de configurá-lo e reinstalar manualmente os pacotes Grove nesse ambiente. É mais fácil usar pacotes globais, especialmente porque muitos programadores de Pi preferem regravar um cartão SD limpo para cada projeto.
Por fim, isto ativa a interface I2C.
-
Reinicie o Pi executando o seguinte comando:
sudo reboot
A sessão
ssh
será encerrada quando o Pi for reiniciado. Não é necessário reconectar-se.
Configurar o VS Code para acesso remoto
Depois de o Pi estar configurado, pode conectar-se a ele utilizando o Visual Studio Code (VS Code) a partir do seu computador - este é um editor de texto gratuito para programadores que será utilizado para escrever o código do dispositivo em Python.
Tarefa - configurar o VS Code para acesso remoto
Instale o software necessário e conecte-se remotamente ao seu Pi.
-
Instale o VS Code no seu computador seguindo a documentação do VS Code.
-
Siga as instruções na documentação de Desenvolvimento Remoto do VS Code usando SSH para instalar os componentes necessários.
-
Seguindo as mesmas instruções, conecte o VS Code ao Pi.
-
Uma vez conectado, siga as instruções de gestão de extensões para instalar remotamente a extensão Pylance no Pi.
Olá, mundo
É tradicional, ao começar a aprender uma nova linguagem de programação ou tecnologia, criar uma aplicação 'Hello World' - uma pequena aplicação que exibe algo como o texto "Hello World"
para confirmar que todas as ferramentas estão configuradas corretamente.
A aplicação Hello World para o Pi garantirá que tens o Python e o Visual Studio Code instalados corretamente.
Esta aplicação estará numa pasta chamada nightlight
, e será reutilizada com código diferente em partes posteriores deste exercício para construir a aplicação nightlight.
Tarefa - hello world
Cria a aplicação Hello World.
-
Abre o VS Code, diretamente no Pi ou no teu computador, conectado ao Pi usando a extensão Remote SSH.
-
Abre o Terminal do VS Code selecionando Terminal -> New Terminal, ou pressionando
CTRL+`
. O terminal abrirá no diretório home do utilizadorpi
. -
Executa os seguintes comandos para criar um diretório para o teu código e criar um ficheiro Python chamado
app.py
dentro desse diretório:mkdir nightlight cd nightlight touch app.py
-
Abre esta pasta no VS Code selecionando File -> Open... e escolhendo a pasta nightlight, depois seleciona OK.
-
Abre o ficheiro
app.py
no explorador do VS Code e adiciona o seguinte código:print('Hello World!')
A função
print
imprime na consola o que for passado como argumento. -
No Terminal do VS Code, executa o seguinte comando para correr a tua aplicação Python:
python app.py
💁 Poderás precisar de chamar explicitamente
python3
para executar este código se tiveres o Python 2 instalado além do Python 3 (a versão mais recente). Se tiveres o Python 2 instalado, ao chamarpython
, será usada a versão 2 em vez da 3. Por padrão, as versões mais recentes do Raspberry Pi OS têm apenas o Python 3 instalado.A seguinte saída aparecerá no terminal:
pi@raspberrypi:~/nightlight $ python3 app.py Hello World!
💁 Podes encontrar este código na pasta code/pi.
😀 O teu programa 'Hello World' foi um sucesso!
Aviso Legal:
Este documento foi traduzido utilizando o serviço de tradução por IA Co-op Translator. Embora nos esforcemos pela precisão, esteja ciente de que traduções automáticas podem conter erros ou imprecisões. O documento original na sua língua nativa deve ser considerado a fonte autoritária. Para informações críticas, recomenda-se a tradução profissional realizada por humanos. Não nos responsabilizamos por quaisquer mal-entendidos ou interpretações incorretas decorrentes do uso desta tradução.