Começando com o GPIO em um Raspberry Pi

Se você acha que o Arduino é legal, espere até você colocar as mãos em um Raspberry Pi - essas coisas são incríveis. Além de ser um computador totalmente funcional, eles também têm uma seleção de pinos de Entrada / Saída de Propósito Geral.

Se você acha que o Arduino é legal, espere até você colocar as mãos em um Raspberry Pi - essas coisas são incríveis.  Além de ser um computador totalmente funcional, eles também têm uma seleção de pinos de Entrada / Saída de Propósito Geral.
Propaganda

featured-rpi-gpio Se você acha que o Arduino é legal, espere até você colocar as mãos em um Raspberry Pi - essas coisas são incríveis. Além de ser um computador totalmente funcional, eles também têm uma seleção de pinos de Entrada / Saída de Propósito Geral . Assim como um Arduino, podemos usá-los para criar projetos eletrônicos - e é surpreendentemente fácil começar.

Hoje vamos ligar um relé e usá-lo para ligar um LED, mas você pode facilmente ligar uma lâmpada.

Esta introdução serve como a primeira parte de um projeto de automação residencial maior. Christian já lançou as bases para começar com um Pi, então eu não vou repetir os passos iniciais aqui de baixar um sistema operacional ou conectar o cartão SD - eu vou assumir que você já tem um sistema Raspian funcionando .

Aviso : Embora um Raspberry Pi possa ser usado de forma semelhante a um Arduino, um pouco mais de cuidado é necessário. Os pinos do Pi operam a 3.3v, enquanto o Arduino usa 5v . Embora seja possível quebrar um Arduino, é muito mais fácil quebrar um Pi quando os pinos se conectam diretamente ao chip onboard - o envio de 5v para baixo pode fritar.

Portanto, tenha muito cuidado ao tentar replicar os projetos do Arduino no seu Pi - siga um tutorial específico do Pi, ou certifique-se de ter uma boa compreensão da eletrônica básica.

Requisitos:

  • Transistor NPN, como P2N2222A
  • 1k resistor
  • Retransmissão; Estou usando um módulo de 5V de 4 relés que possui circuitos de proteção adicionais embutidos (portanto, não há necessidade de diodos extras
  • LED e resistor de 220 ohm para testes
  • Cabo breakout

Cabo Breakout (“Kit Cobbler”)

Os pinos GPIO estão situados no lado do Pi, ao lado do soquete de saída de vídeo RCA.

cabo de fuga

Embora seja tecnicamente possível conectar alguns cabos de jumper terminados diretamente a eles, eles não são rotulados de forma útil e, portanto, é mais provável que você quebre algo. Em vez disso, pegue um cabo breakout como este da Adafruit, ou um dos muitos clones mais baratos no eBay. Você pode precisar soldar isso, pois ele virá em forma de kit.

Placa de fuga

Embora o lado da placa tenha um entalhe para indicar a colocação correta do cabo, o lado do Pi não. Certifique-se de que os pinos 3v e 5v no canto distante do Pi estejam alinhados com os pinos relevantes na placa. Claro, se você comprou um case que não exponha o cabeçalho do GPIO, então você precisará rodar com Pi nu ou fazer um buraco.

clear-case-gpio

Alternativamente, você pode obter uma placa completa que afixa no topo do seu Pi, e geralmente vem com uma seleção de componentes úteis.

Circuito Básico

Configure o circuito conforme descrito abaixo. Eu deixei de fora o circuito do relé, pois isso irá variar. Use os terminais NO (normalmente fechados) e COM do seu relé para o seu LED ou outro dispositivo.

o circuito

Use o pino 4 do Raspberry Pi. No meu quadro de discussão, é rotulado como + GPCLK0; De qualquer forma, é o quarto pino contando a partir de 3V3.

pin4

Teste de linha de comando

Nos exemplos a seguir, presumo que você esteja logado em SSH ou seja, como usuário root. Caso contrário, você precisará iniciar alguns dos comandos com sudo para privilégios elevados.

Primeiro, precisamos instalar o WiringPi .

git clone git://git.drogon.net/wiringPi cd wiringPi ./build 

Supondo que tudo correu bem, agora devemos ser capazes de controlar diretamente o GPIO a partir da linha de comando assim:

 gpio -g mode 4 out gpio -g escrever 4 1 

O primeiro comando é semelhante à função de configuração do Arduino, onde estamos dizendo ao Pi para usar o pino 4 como saída. O próximo comando grava um valor de 1 no pino, que deve acionar o transistor, ativar o relé, fechar o circuito do LED e ligá-lo.

Impressionante. Se isso não acontecer, volte e verifique sua fiação. O relé clica?

Python

Embora o Python não seja a única maneira de se comunicar com os pinos GPIO, ele é geralmente considerado o mais fácil e é o mais comumente encontrado em projetos existentes. Ao contrário de C, o Python é relativamente fácil de aprender (veja 5 sites para aprender Python) Os 5 melhores sites para aprender programação em Python Os 5 melhores sites para aprender programação em Python Ao longo da última década, a linguagem de programação Python explodiu em popularidade entre os programadores. áreas de codificação. De desenvolvedores da web a designers de videogames a criadores de ferramentas internos, muitas pessoas têm ... Read More).

Comece instalando as seguintes extensões do Python:

 apt-get install python-dev apt-get install python-rpi.gpio 

Agora, crie um novo arquivo chamado test.py. se você estiver usando uma linha de comando, digite

 nano test.py 

Cole ou digite o seguinte (também neste pastebin):

 import RPi.GPIO as GPIO import time GPIO.setmode(GPIO.BCM) GPIO.setup(4, GPIO.OUT) for x in range(0, 10): time.sleep(5) GPIO.output(4, 1) time.sleep(5) GPIO.output(4, 0) 

Este é um script Python muito simples que vai ligar o LED (ou o que você conectou ao seu relé) por 5 segundos, depois por 5 segundos, 10 vezes . Você deve ser capaz de entender a maior parte do código. A linha GPIO.setmode é simplesmente usada para indicar o esquema de numeração de pinos que vamos usar.

É isso aí! Para executar o código, digite:

 python test.py 

acabado

Na próxima semana, vamos elaborar um pouco a configuração e fazer algumas coisas interessantes, como adicionar controle de voz. Se você for adicionar itens elétricos de alta voltagem no circuito do relé, você deve ter certeza de que está usando um relé classificado corretamente no fio energizado, e certifique-se de colocar tudo para que fique longe dos dedos. de bebês ou mãe. Sério, esteja seguro.

Por favor, poste suas perguntas, comentários, comentários e haikus na caixa abaixo - mas tenha em mente que eu vou te dar notas sobre o uso da gramática.

In this article