Raspberry Pi: mudanças entre as edições
Linha 7: | Linha 7: | ||
Acesso remoto: | Acesso remoto: | ||
*https://www.raspberrypi.org/documentation/remote-access/ | *https://www.raspberrypi.org/documentation/remote-access/ | ||
;config.txt: Este arquivo de texto é usado pelo Raspberry Pi para obter as '''configurações do sistema''', ao invés da BIOS que é normalmente usada por PCs. Deve ficar localizado na '''partição principal''' do '''cartão SD''', junto com os arquivos bootcode.bin e start.elf. É acessível na localização '''/boot/config.txt''' e deve ser editado como root. | ;config.txt: Este arquivo de texto é usado pelo Raspberry Pi para obter as '''configurações do sistema''', ao invés da BIOS que é normalmente usada por PCs. Deve ficar localizado na '''partição principal''' do '''cartão SD''', junto com os arquivos bootcode.bin e start.elf. É acessível na localização '''/boot/config.txt''' e deve ser editado como root. | ||
Linha 25: | Linha 20: | ||
**https://www.raspberrypi.org/forums/viewtopic.php?f=29&t=24679 | **https://www.raspberrypi.org/forums/viewtopic.php?f=29&t=24679 | ||
; | ;Pinagem GPIO | ||
*https://www.raspberrypi.org/documentation/usage/gpio/ | |||
[[Arquivo:rpi-gpio.png|500px]] | |||
:Comando via terminal: | |||
pi@raspberrypi:~ $ pinout | |||
==Acesso aos drives gpio pelo terminal== | ==Acesso aos drives gpio pelo terminal== | ||
Linha 120: | Linha 114: | ||
Leitura: | Leitura: | ||
gpio -g read 26 | gpio -g read 26 | ||
===Entradas analógicas=== | |||
O Raspberry Pi não possui pinos para '''entradas analógicas''', para tal é necessário especificar um módulo externo e o parâmetro -x. | |||
gpio aread <pino> | |||
gpio awrite <pino> <valor> | |||
==Programação Python para controle GPIO== | ==Programação Python para controle GPIO== |
Edição das 17h07min de 11 de agosto de 2020
Raspberry Pi 4 Model B
Página Oficial: https://www.raspberrypi.org/
Instalação:
Acesso remoto:
- config.txt
- Este arquivo de texto é usado pelo Raspberry Pi para obter as configurações do sistema, ao invés da BIOS que é normalmente usada por PCs. Deve ficar localizado na partição principal do cartão SD, junto com os arquivos bootcode.bin e start.elf. É acessível na localização /boot/config.txt e deve ser editado como root.
- Instalação do monitor
- Raspberry Pi Touch Screen 7‘’ Display 1024×600
Informações sobre configurações de vídeo do arquivo config.txt:
Link consulta utilizado:
- Pinagem GPIO
- Comando via terminal:
pi@raspberrypi:~ $ pinout
Acesso aos drives gpio pelo terminal
- Exemplo de acionamento de led [1]
- Pino físico 21
Acesso aos drives de controle dos pinos GPIO e verificar se o pino está ativo
cd /sys/class/gpio/ ls
Se não estiver ativo, ativar com o comando
echo 21 > /sys/class/gpio/export
Configurar o pino como saída (default entrada)
echo out > /sys/class/gpio/gpio21/direction
Acionar led com 0 (LOW) ou 1 (HIGH):
echo 1 > /sys/class/gpio/gpio21/value echo 0 > /sys/class/gpio/gpio21/value
Desativar acesso ao pino:
echo 21 > /sys/class/gpio/unexport
Programa GPIO
O biblioteca WiringPi fornece comandos para acesso direto aos pinos GPIO do Raspberry Pi [2].
Para verificar a versão instalada:
gpio -v
Para atualizar a versão:
cd /tmp wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb
Ajuda para comandos:
man gpio
Verificação do estado atual dos pinos gpio:
gpio readall
Saídas digitais
- Acionamento de led
- Pino GPIO 17 (físico 11)
gpio -g mode 17 out gpio -g write 17 1 gpio -g write 17 0
- O parâmetro -g indica numeração dos pinos BCM_GPIO (na caso de -i indica numeração física dos pinos).
- Piscar led
gpio -g blink 17
- Script para piscar led [1]
- Usar editor de textos e salvar como blink.sh
#!/bin/sh
gpio -g mode 17 out
while true
do
gpio -g write 17 1
sleep 1
gpio -g write 17 0
sleep 1
done
Dar permissão de execução:
chmod +x blink.sh
Saídas PWM
Uma saída PWM gera uma onda quadrada, com frequência constante, em que a fração de tempo em que o sinal é HIGH (3,3 V) pode variar entre 0 e 100% (duty cycle), fornecendo uma média de tensão variável na saída. O controle do duty cycle no Raspberry Pi usa 10 bits e pode ser variado de 0 a 1024.
No Raspberry Pi os pinos GPIO12, GPIO13, GPIO18 e GPIO19 aceitam saída PWM.
- Controle da luminosidade de um led
- Pino GPIO 18
gpio -g mode 18 pwm
Luminosidade máxima:
gpio -g pwm 18 1024
Luminosidade média:
gpio -g pwm 18 512
Luminosidade mínima:
gpio -g pwm 18 0
Entradas digitais
Um pino GPIO configurado como entrada digital pode ser valores HIGH (3V3) ou LOW (0V).
Também podem ser utilizados os resistores internos pull-up ou pull-down. Os pinos GPIO2 e GPIO3 tem resistores pull-up fixos, os demais podem ser configurados por software.
- Exemplo chave eletrônica e uso de resistor pull-up interno
- pino 26: Com a chave aberta o pino recebe HIGH através do resistor pull-up. Com a chave fechada o pino recebe LOW.
Configuração:
gpio -g mode 26 up
Leitura:
gpio -g read 26
Entradas analógicas
O Raspberry Pi não possui pinos para entradas analógicas, para tal é necessário especificar um módulo externo e o parâmetro -x.
gpio aread <pino> gpio awrite <pino> <valor>
Programação Python para controle GPIO
- Programa para piscar led (Blink)
- [3].
Verificar se a biblioteca rpi.gpio está instalada:
apt list --installed | grep rpi.gpio
Importar biblioteca no interpretador ou no código em Python:
import RPi.GPIO as GPIO
Uso da biblioteca time para implementar temporizações (delays):
from time import *
Código Python:
import RPi.GPIO as GPIO
from time import *
GPIO.setmode(GPIO.BCM) # Numeração nomes GPIO
#GPIO.setmode(GPIO.BOARD) # Numeração pinagem da placa
GPIO.setup(17, GPIO.OUT)
while True:
GPIO.output(17, GPIO.HIGH)
print("High")
sleep(1)
GPIO.output(17, GPIO.LOW)
print("Low")
sleep(1)
Interação entre Raspberry Pi e Node-RED
Ver link: Node-RED
Evandro.cantu (discussão) 09h03min de 23 de julho de 2020 (-03)