Como conectar e interface um Raspberry Pi com um Arduino

Como conectar e interface um Raspberry Pi com um Arduino
Às vezes, o usuário pode sentir a necessidade de conectar e interface o Arduino e o Raspberry Pi juntos para alguns projetos, nos quais computam e controlam sensores, atuadores ou outros dispositivos estão envolvidos. Para esses projetos, as tarefas de computação podem ser realizadas usando Raspberry Pi e Arduino podem se comunicar em série. O tutorial básico para conectar e interface Raspberry Pi com um Arduino é apresentado neste artigo.

Como conectar e interface um Raspberry Pi com um Arduino

O procedimento passo a passo para conectar e interface Raspberry Pi com um Arduino é dado abaixo:

Etapa 1: Ativar comunicação serial em Raspberry Pi

Você pode interface o Raspberry Pi e o Arduino juntos via comunicação serial; portanto, para isso, é obrigatório permitir a comunicação serial no Raspberry Pi.

Para ativar a comunicação serial, abra o Raspberry Pi Ferramenta de configuração de Preferências opção do Menu do aplicativo:

Em seguida, clique no Interfaces aba:

E ativar I2c e Porta serial Ao girar os botões na frente deles para a direita:

Então clique OK Para salvar a configuração:

O sistema solicitará um clique em reinicialização Sim aqui:

Etapa 2: Instale as bibliotecas Python necessárias

Vamos interface o Raspberry Pi com um Arduino usando o código Python, mas a comunicação entre Arduino e Raspberry Pi será uma comunicação em série, portanto, para isso serial Biblioteca é necessária. Embora já esteja instalado no Raspberry Pi, é melhor confirmar sua disponibilidade usando o seguinte comando:

$ sudo apt install python3-serial

O comando instalará a biblioteca serial no sistema Raspberry Pi se não estiver instalado, caso contrário, você terá confirmação de que ele já está instalado no sistema Raspberry Pi.

Como alternativa, você também pode instalá -lo através do PIP se não conseguir encontrar a série Python no sistema Raspberry Pi:

$ sudo pip install pyserial

Etapa 3: Instale o Arduino IDE no Raspberry Pi

Para instalar o Arduino IDE no Raspberry Pi, execute o comando mencionado abaixo:

$ sudo apt install arduino -y

Em seguida, verifique a instalação do Arduino IDE executando o comando de versão abaixo escrito:

$ arduino -versão

Para um Arduino correr no Raspberry Pi, é obrigatório ter um pacote Java instalado no Raspberry Pi. Para verificar se o Java está instalado no Raspberry Pi ou não execute o comando abaixo escrito:

$ java --version

Apenas se o pacote Java ainda não estiver instalado no Raspberry Pi, você pode usar o comando abaixo mencionado para instalar o Java no Raspberry Pi:

$ sudo apt install openjdk-17-jdk -y

Etapa 4: Program um Arduino

Agora abra o Arduino IDE no Raspberry Pi do menu de aplicativos no Programação seção. E escreva o código que deseja executar no Raspberry Pi depois de interface -o com Arduino. O código para comunicação serial seria algo assim, como mostrado no exemplo abaixo, aqui estou apenas imprimindo uma string de mensagem simples:

Void Setup ()
Serial.começar (9600);

Void Loop ()
Serial.println ("Olá! Arduino aqui ");
atraso (500);

Depois de escrever o código Arduino desejado, compile o código clicando no botão de compilação:

Salve o arquivo com o nome desejado, aqui eu nomeei meu arquivo Arduino como mycode:

Depois de compilar com sucesso, agora é hora de selecionar a porta e para que clique em Ferramentas então Porta e depois selecione a porta com a qual o (Arduino Uno) é mencionado:

Depois de compilar, envie o código para a placa Arduino, clicando no botão de upload destacado na imagem abaixo:

Etapa 5: Escreva um código Python

Depois de enviar o código, agora é hora de escrever um código Python no Raspberry Pi para comunicar Raspberry Pi e Arduino. Para escrever o código Python no Raspberry Pi, abra o Thonny Python IDE no menu do aplicativo:

Agora copie o código Python abaixo mencionado para a comunicação serial entre Arduino e Raspberry Pi:

importação serial
Importar RPI.Gpio como gpio
tempo de importação
Ser = serial.Serial ("/dev/ttyacm0", 9600)
enquanto é verdade:
read_ser = Ser.Leia a linha()
imprimir (read_ser)

O read_ser armazenará a mensagem ou string que será comunicada em série através de um Arduino.

Em seguida, salve o código escrito clicando no Salvar botão:

Em seguida, escreva qualquer nome desejado para o arquivo e clique em OK:

Etapa 6: encontre o número da porta ACM

No código Python acima, o número ACM é o número de portas para comunicação serial e, para encontrar o número da ACM, execute o comando abaixo mencionado:

$ ls /dev /tty*

A saída do comando será exibida diferente ttys De que você precisa encontrar aquele com um número ACM, ele pode ser ACM0, ACM1, ACM2 ou outro número:

Depois de encontrar o número do ACM, volte ao código Python e digite o número do ACM que você acabou de descobrir:

Etapa 7: conecte o Arduino com Raspberry Pi e execute o código

Agora é a hora de conectar o Arduino e o Raspberry Pi usando um cabo Arduino. Insira uma extremidade do cabo Arduino no Arduino e conecte a outra extremidade à porta USB do Raspberry Pi.

Em seguida, clique no Correr Botão no Python IDE:

Logo após a execução do código, a string codificada em um Arduino será transmitida ao Raspberry Pi e é exibida como uma saída no Raspberry Pi:

A saída acima confirma que o Raspberry Pi está conectado com sucesso e interfocado com o Arduino.

Conclusão

Para conectar e interface Raspberry Pi com um Arduino, a comunicação serial é usada. Habilite a comunicação serial e instale a biblioteca serial em Raspberry Pi. Em seguida, codifique o Arduino e configure a porta serial para enviar dados em série. Depois disso, escreva um código Python no Raspberry Pi, juntamente com o número da porta ACM para receber em série dados do Arduino. Finalmente, execute o código Python para exibir a saída serial no Python IDE.