Projetos com Raspberry Pi 3

No primeiro artigo sobre o Raspberry Pi, nós mostramos como preparar a placa, instalamos o Raspbian, que é o sistema operacional do Raspberry, e criamos um primeiro programa para acionar um led (veja o artigo Primeiros passos com o Raspberry Pi).

Nesse segundo post vamos continuar com o básico de projetos com Raspberry Pi usando algumas funções da GPIO da placa.

Raspberry Pi B+

Acionando leds no Raspberry utilizando push-button

No exemplo do primeiro post, usamos apenas uma porta do Raspberry para acionar um led, que piscava a intervalos de 0,5 segundos. Dessa vez, vamos utilizar 4 portas, sendo que 3 serão de saída, onde estarão ligados os leds, e 1 de entrada, onde vamos ligar um push-button.

O material que vamos utilizar está disponível no nosso Kit Raspberry Pi Intermediate, e é o seguinte:

  • 3 LEDs
  • 4 Resistores (3 limitadores de corrente para os leds e 1 como resistor pull-down)
  • 1 Push-button

Montando o circuito abaixo, teremos um esquema com 3 leds e 1 botão sendo que a cada toque no botão um led é aceso:

Circuito Raspberry Botão Leds

IMPORTANTE: O Raspberry trabalha com nível de sinal máximo de 3.3v, portanto tome cuidado para não ligar dispositivos/sensores que ultrapassem esse valor. Se necessário, utilize divisores de tensão ou circuitos auxiliares. Observe que para alimentação dos leds e conexão do push-button estamos utilizando o pino 1 (3.3v) do GPIO.

No programa temos uma variável contador, que é incrementada a cada toque no botão. O valor 1 aciona o led vermelho (porta 11 – GPIO17), o valor 2 aciona o led amarelo (porta 12 – GPIO18) e o valor 3 aciona o led verde (porta 13 – GPIO27). Quando o contador chega ao valor 4, todos os leds são apagados, a variável contador é zerada e o processo é reiniciado:

Música no Raspberry

Já sabemos que o Raspberry Pi possui uma saída de áudio. Nas placas versão B+ e versão 2, entretanto, o conector de áudio serve também como saída de vídeo composto. Apesar de parecer um plugue P2 comum (3,5 mm), ele é um plugue de 4 pólos, logo tem uma estrutura diferente:

Conector audio e video Raspberry

A boa notícia é que se você ligar um fone de ouvido comum com plugue P2 à essa saída, vai funcionar normalmente, mas é bom saber dessa dupla função do conector.

No nosso segundo projeto com Raspberry Pi, você pode utilizar o mesmo push-button que ligamos à porta 18 no circuito anterior. Aliás, vai ser a única ligação física no nosso Raspberry. O resto do procedimento será feito via software.

Nos nossos testes, precisamos antes de mais nada habilitar a saída de áudio do Raspberry, isso é feito utilizando comandos digitados no console do Raspbian (utilize o LXTerminal):

(obs : os comandos que começam com sudo são executados com direitos de administrador/superuser)

Instalando o update de firmware do Raspberry:

sudo apt-get install ca-certificates git-core binutils
wget https://raw.github.com/Hexxeh/rpi-update/master/rpi-update
sudo cp rpi-update /usr/local/bin/rpi-update

Atualizando o firmware:

sudo rpi-update

Instalando ALSA, MPLayer e MPG321:

sudo apt-get install mplayer mplayer-gui alsa-base alsa-utils mpg321

Adicionando o módulo de áudio ao kernel:

modprobe snd_bcm2835

Configurando a saída de áudio:

amixer cset numid=3 1

Reinicie o Raspberry para que as alterações tenham efeito:

Reboot

Faça o download ou copie um MP3 qualquer para a pasta /home/pi/musica do Raspberry Pi. Provavelmente você não terá essa pasta no seu Raspberry, então utilize o seguinte comando para criá-la:

mkdir /home/pi/musica

Depois de tudo isso, digite o seguinte programa no Python :

Pressione o push-button para que o MP3 minhamusica.mp3 (ou outro nome que você escolheu) contido na pasta /home/pi/musicas seja reproduzido.

Gostou? Ajude-nos a melhorar o blog atribuindo uma nota a este tutorial (estrelas no final do artigo), comente e visite nossa loja FILIPEFLOP !

Posts Relacionados

3 Comentários

  1. Boa noite amigo! Parabéns pelo tutorial e iniciativa.
    Estou precisando controlar servo motores via um raspberry B+, pensei em usar um shield para isso (http://www.dx.com/pt/p/16-way-servo-control-expansion-board-for-raspberry-pi-b-b-arduino-blue-340853#.VGk12ZPF-W5), você já teve alguma experiência com esse tipo de ligação/uso?

  2. Amigo como faço esse mesmo programa para o pic em C

  3. Boa noite amigo. Excelente tutorial.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *