1. Resumo:
- este blog o acompanha através do processo de como comunicar um Arduino e um Raspberry Pi com módulo nRF24L01. Para começar, vamos estar aprendendo algumas noções básicas de Raspberry Pi, em seguida, vamos ter um olhar para a configuração Raspberry Pi sem cabeça. Para a implementação em primeiro lugar, vamos entender a simples comunicação de Arduino para Arduino, em seguida, vamos aprender Arduino para o raspberry pi.Encontrei muitos guias para conseguir isso na Internet, mas nenhum deles estava completo ou totalmente trabalhado para mim. Aqui vamos entender passo a passo guia deste processo. E no final estará mostrando um exemplo de trabalho para o mesmo
2. Componentes necessários:
- Sensor Ultra-sônico
- 2 Arduino Uno
- Raspberry Pi 3
- 2 nRF24l01 o transmissor e o receptor
- Salto fios
- Arduino cabo
- MINI USB 2.0 para Pi
- Protoboard
3. Software Necessário:
- Raspbian for pi
- Arduino IDE or Visual Studio
- Putty on a remote computer for SSH
- VNC viewer on a remote computer
4. Introdução ao Raspberry Pi 3:
4.1. Especificações dos componentes:
- 1.4 ARM Cortex-A53, 1GB RAM
- 2.4/5Ghz dual-band 802.11 ac Wireless LAN, 10/100/1000Mbps Ethernet Bluetooth 4.2
- 4 portas USB, Full HDMI port, Combined 3.5mm jack de áudio e de vídeo composto porta, 40 pinos GPIO
- slot para cartão Micro SD, Vídeo de Núcleo IV 3D graphics core, Câmera de interface (CSI), interface de Visualização (DSI)
4.2 Raspberry Pi Pinagem:
4.3. Instalação da Raspberry Pi sem cabeça:
- acabei de comprar um Raspberry pi e quero ver como funciona. Mas tudo o que tenho é o meu portátil, o Pi, um cartão Micro SD, e a minha rede Wi-Fi. Como posso conectar-me e controlar o Pi?
1) Transferir O Raspbian:
- o seu Pi precisa de um SO. Download do Raspbian Raspberrypi.org ‘s seção de download:
- https://www.raspberrypi.org/downloads/raspbian/
2) Download Cartão de Memória SD Formatter:
- Ele é usado para formatar o cartão SD, pois é necessário que o cartão SD deve estar vazia antes de o piscar da imagem que você baixou. Você pode baixá-lo a partir de https://www.sdcard.org/downloads/formatter/eula_windows/
3) Flash-lo para um cartão SD:
- tem de mostrar esta imagem descarregada para o cartão Micro SD. Assumindo que o seu portátil tem um slot de cartão SD ou um leitor de cartão Sd micro, você precisa de um software intermitente como o etcher. Vá em frente e baixe a partir de https://etcher.io/
4) Configurar o Wi-Fi:
- É mais fácil fazer dois dispositivos de falar uns com os outros se eles estão na mesma rede. Um cabo ethernet pode facilmente tornar a rede do seu laptop disponível para o Pi. Mas não temos. Então, vamos adicionar um arquivo ao cartão SD para que as botas Pi com um Wi-Fi pré-configurado.
- o cartão SD monta em dois volumes boot e rootfs . Abra o volume de arranque e crie um ficheiro chamado wpa_supplicant.conf ao iniciar o RPi, este ficheiro será copiado para a pasta /etc/wpa_ Supplicant na partição /rootfs. O ficheiro copiado diz ao Pi a informação de configuração do Wi-Fi. Isto iria substituir qualquer configuração de Wi-Fi existente, por isso se já tivesse configurado o Wi-Fi no pi, então isso será substituído.
- a typical wpa_supplicant.o ficheiro conf é o seguinte::
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdevupdate_config=1country=US network={ ssid=""your_SSID"" psk=""your_PSK"" key_mgmt=WPA-PSK}
Nota: O Seu SSID é o nome do seu Wi-Fi. E psk é a senha do WI-FI.
5) Enable SSH
- we will later access the Pi using a secured shell (SSH), SSH is disabled by default in Raspbian. Para activar o SSH, crie um ficheiro chamado ssh na partição de arranque. Se você estiver no Linux, use o comando touch para fazer isso.
6) Localizar Pi endereço Ip:
- Antes de ligar o seu raspberry pi, precisamos de descobrir os dispositivos existentes ligados à rede. Certifique-se que o seu portátil Está ligado à mesma rede Wi-Fi que configurou no pi acima.
- baixe o Scanner IP avançado para digitalizar o IP do nosso raspberry pi. Você pode baixá-lo aqui https://www.advanced-ip-scanner.com/
7) o SSH em seu Pi:
- Para criar uma segura conexão de shell no Linux podemos usar o comando ssh. Se você estiver no windows, tente fazer o download do Putty https://www.putty.org/
as credenciais Padrão são:
username: pipassword: raspberry
8) Acesso Pi remotamente:
- às Vezes, ele não se sente bem, se não podemos usar o mouse. Para isso, precisamos olhar para o desktop Raspbian.
- precisamos configurar VNC (conexão de rede Virtual) para ver e controlar Pi graficamente. Vamos fazer isso.
- para aceder ao ecrã Remoto, necessita de visualizador de VNC (cliente) para o seu portátil. Felizmente, RealVNC está disponível para uma série de sistemas Operacionais, escolha um para o seu sistema operacional a partir do https://www.realvnc.com/en/connect/download/viewer/
9) Comandos para vncserver:
10) Agora abra o VNC Viewer no computador remoto:
5. Execução e funcionamento:
5.1. Comunicação sem fios de Arduino a Arduino com nRF24L01:
- nesse sentido, aprenderemos a fazer a comunicação sem fio entre duas placas Arduino usando o NRF24L01. E medir a distância com sensor ultrassônico e transmiti-lo para outro Arduino com módulo transceptor.Instruções de cablagem:
para transferir o seu NRF24L01+ remetente sem fios para o seu Arduino, ligue os seguintes pinos:
- ligue o pin VCC a 3.3 Volts
- Conecte o pino GND para a terra (GND)
- Conectar-se a CE pin para Arduino 9
- Conectar-se a CSN pin para Arduino 10
- Conecte o SCK pin para Arduino 13
- Conectar-se a MOSI pin para Arduino 11
- Conecte o MISO pin para Arduino 12
Para conectar o sensor ultra-sônico para o Arduino, ligar os seguintes pinos:
- Ligar o VCC pino do Arduino 5Volts
- Conecte o pino GND para a terra (GND)
- Conectar-se a Trigonometria pin para Arduino 4
- Ligar o Eco pino do Arduino 3
Ao fio do seu NRF24L01+ wireless remetente para o Arduino, conecte-se os seguintes pinos:
- Ligar o VCC pino 3.3 Volts
- Conecte o pino GND para a terra (GND)
- Conectar-se a CE pin para Arduino 9
- Conectar-se a CSN pin para Arduino 10
- Conecte o SCK pin para Arduino 13
- Conectar-se a MOSI pin para Arduino 11
- Conecte o MISO pin para Arduino 12
NOTA: RF24 módulo é obrigatório para que o código seja executado de modo que você pode adicionar a biblioteca em conformidade
- Iniciar Arduino IDE, em seguida, adicione o download da Biblioteca a partir Daqui :
5.2. Código:
Remetente o código ao Lado:
do Lado do Receptor de código:
o Envio de Dados
Receber os dados:
6. Comunicação sem fios de Arduino a Raspberry Pi com nRF24L01:
6.1: instalação do módulo RF24 em Raspberry Pi:
- é o passo mais importante e mais importante para qualquer comunicação para trabalhar entre Arduino e Raspberry Pi como temos usado RF24 biblioteca em Arduino para a comunicação, de modo que a mesma Biblioteca é necessária em Pi.
- outros são os passos que envolvem a instalação da Biblioteca. Levei quase uma semana para instalá-lo como nenhuma idéia clara sobre ele está presente.
=> modo de ir:
1. Liga-te à Raspberry Pi com massa.
2. Vai ao servidor VNC para a GUI.
3. No terminal digite:
sudo raspi-config
Ligue SPI a partir da Interface opções de configuração
4. Reinicie o Pi. No terminal, digite:
sudo reboot
5. No tipo de terminal:
sudo apt-get update
6. Transferir a install.sh ficheiro http://tmrh20.github.io/RF24Installer/RPi/install.sh ou execute isto no terminal:
wget http://tmrh20.github.io/RF24Installer/RPi/install.sh
7. Torná-lo executável:
chmod +x install.sh
8. Execute-o e escolha suas opções:
9. Executar um exemplo de uma das bibliotecas:
cd rf24libs/RF24/examples_linux make sudo ./gettingstarted
executar os seguintes comandos para executar o programa.
10. Além disso, se quisermos executar programas Python com a mesma finalidade, podemos fazer isto:
executando o exemplo edite o pingpair_dyn.py exemplo para configurar os pinos apropriados para a documentação acima:
nano pingpair_dyn.py
- Configurar outro dispositivo, Arduino ou RPi com o pingpair_dyn exemplo
- Executar o exemplo
sudo python pingpair_dyn.py
6.2. Comunicação sem fios de Arduino a Arduino com nRF24L01:
- neste, vamos aprender como fazer a comunicação sem fio entre Arduino e Raspberry Pi usando o NRF24L01. E medir a distância com um sensor ultrassônico com a ajuda de Arduino Uno e transmiti-lo para Raspberry Pi e dados é recebido.Instruções De Cablagem:
Ao fio do seu NRF24L01+ wireless Remetente para o Arduino, conecte-se os seguintes pinos:
- Ligar o VCC pino para 3,3 Volts
- Conecte o pino GND para a terra (GND)
- Conectar-se a CSN pin para Arduino 10
- Conectar-se a CE pin para Arduino 9
- Conecte o SCK pin para Arduino 13
- Conecte o MISO pin para Arduino 12
- Conectar-se a MOSI pin para Arduino 11
Para conectar o sensor ultra-sônico para o Arduino, conecte-se os seguintes pinos:
- Ligar o VCC pino do Arduino 5Volts
- Conecte o pino GND para a terra (GND)
- Conectar-se a Trigonometria pin para Arduino 4
- Ligar o Eco pino do Arduino 3
Diagrama Esquemático:
Ao fio do seu NRF24L01+ Receptor sem Fio para o seu Raspberry Pi, conecte-se os seguintes pinos:
- Ligar o VCC pino 3.3 Volts (Pino 1)
- Conecte o pino GND para a terra (GND) (Pino 6)
- Conectar-se a CE pin ao Framboesa de GPIO 22
- Conectar-se a CSN pin ao Framboesa de GPIO 8
- Conecte o SCK pin ao Framboesa de GPIO 11
- Conectar-se a MOSI pin ao Framboesa de GPIO 10
- Conecte o MISO pin ao Framboesa de GPIO 09
Diagrama Esquemático:
6.3. Código:
Código Do Remetente:
Código Lateral Do receptor:
- não é obrigatório usar este código, pois é alterado por mim, de acordo com a minha exigência.
para verificar o bom funcionamento da sua ligação e código, pode executar os exemplos presentes na biblioteca como pingpair_dyn.ino no seu Arduino e pingpair_dyn.py no Raspberry Pi
- O trecho da minha corrida de comunicação:
Conclusão: Será sempre divertido experimentar e brincar com os dispositivos IoT, tais como aprender sobre a criação de Raspberry Pi sem cabeça, Arduino, e Raspberry pi, fazendo-os se comunicar uns com os outros e enviar dados e superar os erros e desafios como um que eu enfrentei ao instalar o módulo RF24. O objetivo deste tutorial é servi-lo com um processo passo a passo e esperar que fosse fácil de seguir e aprender também. Obrigado por ler! Sugestões e correções são sempre bem-vindas.