Índice:

Configurar do zero um Raspberry Pi para registrar dados do Arduino: 5 etapas
Configurar do zero um Raspberry Pi para registrar dados do Arduino: 5 etapas

Vídeo: Configurar do zero um Raspberry Pi para registrar dados do Arduino: 5 etapas

Vídeo: Configurar do zero um Raspberry Pi para registrar dados do Arduino: 5 etapas
Vídeo: Programando um Raspberry Pi Pico com Arduino IDE! Exemplo com DualCore! 2024, Novembro
Anonim
Configure do zero um Raspberry Pi para registrar dados do Arduino
Configure do zero um Raspberry Pi para registrar dados do Arduino

Este tutorial é para aqueles que não têm experiência com a instalação de um novo hardware ou software, muito menos Python ou Linux.

Digamos que você tenha pedido o Raspberry Pi (RPi) com cartão SD (pelo menos 8GB, usei 16GB, tipo I) e fonte de alimentação (5V, pelo menos 2,5A). Hoje, você decide configurá-lo e registrar os dados do Arduinos. Então vamos começar!

O tutorial inclui a configuração do Raspberry Pi desde o início, incluindo o Desktop Remote, a preparação de um Arduino com sensores de temperatura 18B20 e a execução de um script Python no Raspberry Pi para coletar e salvar os dados. Eu atualizei a postagem com a adição de compartilhamento de samba para transferir o arquivo entre o computador host (seu PC) e o Raspberry Pi

Etapa 1: preparar Raspberry Pi

Prepare Raspberry Pi
Prepare Raspberry Pi
Prepare Raspberry Pi
Prepare Raspberry Pi
Prepare Raspberry Pi
Prepare Raspberry Pi
Prepare Raspberry Pi
Prepare Raspberry Pi
  1. Baixe o sistema operacional para RPi. Eu recomendo uma versão completa do Raspbian, como esta aqui.
  2. Suponha que você tenha um computador funcionando com Windows, baixe o software Rufus para gravar a imagem no cartão SD. Role para baixo e obtenha o rufus 3.0 (junho de 2018)
  3. Descompacte o arquivo Raspbian (4,6 GB) e selecione cuidadosamente o cartão SD de destino. Demora cerca de 3 minutos para concluir a gravação da imagem no cartão.
  4. Insira o cartão SD no slot, conecte o cabo de alimentação à porta micro USB, um monitor com cabo HDMI, um teclado e um mouse são opcionais.
  5. Espere até o RPi inicializar e mostrar a área de trabalho, pressione a tecla Window, vá para Acessórios / Terminal e Enter.
  6. Configure RPi por tipo:

sudo raspi-config

7. Altere algumas coisas na configuração do RPi:

  • Em 1. Alterar senha
  • Em 2. Opção de rede: Altere o nome do host (algo único, o meu é rpi1001) e o SSID e a senha do wi-fi.
  • Em 4. Opções de localização: Alterar fuso horário, teclado, local
  • Em 5. Opções de interface: Habilitar SSH (para fazer login via linha de comando), Habilitar VNC (para desktop remoto)
  • Em 7: Opção Avançada: Expandir Sistemas de Arquivos:
  • Reinício
  • Após a inicialização: anote o endereço IP executando

sudo ifconfig

Se estiver usando Ethernet, o IP deve ser o primeiro bloco, se for usado Wifi, o IP está no terceiro bloco, algo como 192.168.1.40, execute este comando para atualizar a distro Linux:

sudo apt-get update && sudo apt-get upgrade –y && sudo poweroff

O último irá desligar o RPi após terminar as atualizações

8. Se você esqueceu a nota do IP de RPi, ou foi alterado recentemente, use o PowerShell (digite PowerShell para a caixa de pesquisa no Windows)

No PowerShell para executar ping no Rpi: p ing rpi1001.local –4 obtenha algo como 192.168.1.40. rpi1001 é meu nome de host para meu Rpi.

9. Instale o VNCViewer, este software funciona como TeamViewer ou Desktop Remote no Windows (apenas Win 10 Pro tem o recurso Desktop Remote).

Instale em sua máquina Windows, na caixa de pesquisa na parte superior do VNCViewer, digite o IP do RPi (192.168.1.40) ou o nome do host do RPi (o meu é rpi1001.local) e Enter. Digite a senha do seu nome RPi, selecione ‘Lembrar senha’ se desejar. Se tudo correr bem, você deverá ver a área de trabalho Rpi pop-up.

10. Para transferir arquivos de ou para TeamView, a maneira mais simples de usar a transferência de arquivos embutida por VNCView:

E é isso, você pode usar um Raspberry para coletar dados para você e fazer login para obter dados quando necessário.

Etapa 2: preparar um exemplo simples para coletar dados do Arduino

Prepare um exemplo simples para coletar dados do Arduino
Prepare um exemplo simples para coletar dados do Arduino
Prepare um exemplo simples para coletar dados do Arduino
Prepare um exemplo simples para coletar dados do Arduino

Digamos que você queira coletar a temperatura de 4 sensores. Neste exemplo, usei 18B20, um sensor de temperatura popular. Outras opções são a família TMP35, 36 ou um termistor.

A fiação está incluída acima. Os 18B20s compartilham o fio (ou barramento) e aqui está o código do Arduino no Github. O anexo no arquivo abaixo contém os códigos e o mapa de fiação também.

Além disso, instale o driver USB para Arduino no Windows. A maioria do Arduino ‘clone’ usa o driver CH341 USB. O motorista está aqui.

Instale o driver, ao conectar o Arduino ao USB do Windows, ele deve reconhecer o driver e atribuir uma porta COM (a minha é COM4)

O monitor serial deve ter uma saída como a foto acima.

Etapa 3: Inicialize o RPi desconectando e conectando a energia ao RPi. Inicie o VNCViewer, faça login em seu RPi

Inicialize o RPi desconectando e conectando a energia ao RPi. Inicie o VNCViewer, faça login no seu RPi
Inicialize o RPi desconectando e conectando a energia ao RPi. Inicie o VNCViewer, faça login no seu RPi
Inicialize o RPi desconectando e conectando a energia ao RPi. Inicie o VNCViewer, faça login no seu RPi
Inicialize o RPi desconectando e conectando a energia ao RPi. Inicie o VNCViewer, faça login no seu RPi
Inicialize o RPi desconectando e conectando a energia ao RPi. Inicie o VNCViewer, faça login no seu RPi
Inicialize o RPi desconectando e conectando a energia ao RPi. Inicie o VNCViewer, faça login no seu RPi
Inicialize o RPi desconectando e conectando a energia ao RPi. Inicie o VNCViewer, faça login no seu RPi
Inicialize o RPi desconectando e conectando a energia ao RPi. Inicie o VNCViewer, faça login no seu RPi

Transfira o script Python, usando a ferramenta VNCViewer. Há um banner próximo à parte superior do VNCViewer, procure o botão de duas setas. Para transferir dados do RPi para o Windows, use o símbolo File Transfer in VNC no canto superior direito (próximo ao símbolo Wifi) na área de trabalho do RPi.

O Raspberry é executado no Linux e o Python 2 e 3 são instalados por padrão. Você só precisa instalar uma biblioteca Python chamada pyserial para coletar dados impressos da linha serial.

para instalar o python Serial, digite esta linha no terminal Linux

sudo apt-get install python3-serial

  • no Windows: digite este PowellShell:
  • pip.exe instalar pyserlal

Em seguida, baixe o script e salve-o na área de trabalho do RPi

Para executar o script, primeiro torne-o executável:

sudo chown u + x recordSerial.py

Faça o upload do código do Arduino para a placa do Arduino e, em seguida, conecte o cabo USB com USB e verifique a porta:

  • No Linux, digite isto no terminal: ls / dev / ttyUSB *
  • No Wndows: vá para o Gerenciador de Dispositivos, verifique COM #

Se o script for modificado no Windows, pode ser necessário executar o script Python para dos2unix para remover o caractere estranho de final de linha do Windows. Instale até

sudo apt-get install dos2unix

e converta o script executando-o no terminal

dos2unix recordSerial.py

Modificou a porta real no script por um editor de texto:

sudo nano recordSerial.py

em seguida, execute./recordSerial.py yourfilename.txt

O script Python salvará os dados da RAM para o disco a cada 10 linhas, que podem ser ajustados.

Para parar a gravação, pressione Ctrl + C, O script pode ser executado no Windows (clique duplo), o nome dos dados de registro é o padrão que inclui um carimbo de data / hora

Se você PowerShell, você pode inserir seu nome de arquivo personalizado, python.exe recordSerial.py awesome.txt

Nem todos os 18B20s são iguais. Veja a leitura!

Eu empurrei o código para o GitHub também.

Espero que este tutorial seja útil!

Etapa 4: Instale o Samba para compartilhar a pasta

Instale o Samba para compartilhar a pasta
Instale o Samba para compartilhar a pasta
Instale o Samba para compartilhar a pasta
Instale o Samba para compartilhar a pasta
Instale o Samba para compartilhar a pasta
Instale o Samba para compartilhar a pasta

Esta etapa o guiará por algumas configurações básicas para ter uma pasta compartilhada hospedada no Raspberry Pi que pode ser acessada de outros computadores.

Primeiro, instale o samba, um programa para compartilhar e gerenciar pastas de compartilhamento na rede:

sudo apt-get install samba

fazer uma pasta compartilhada

mkdir ~ / Desktop / sambaShare

modifique o arquivo de configuração do samba:

sudo samba /etc/samba/smb.conf

adicione as seguintes linhas ao final do arquivo:

[sambaShare] comment = compartilhar pasta no caminho RPI de pesquisa = / home / pi / Desktop / sambaShare navegável = sim somente leitura = não gravável = sim público = sim criar máscara = 0777 máscara de reitoria = 0777 convidado ok = sim

Se você tiver problemas com a escrita no Windows, force-o adicionando esta linha ao final do arquivo: force user = pi

No Linux, você pode precisar usar o usuário root (postarei o problema assim que descobrir)

Em seguida, adicione um usuário ao samba e crie uma senha também:

sudo smbpasswd -a pi

em seguida, digite uma senha para o samba (pode ser a mesma ou diferente da senha do usuário pi no sistema)

teste se o arquivo de configuração está bom

testparm

pressione Ctrl + X para salvar e reinicie o serviço samba:

sudo systemctl restart smbd

No computador host, digamos Linux:

se não sim instale samba plus sambaclient e cifs para suportar a unidade de compartilhamento, faça-o executando:

sudo apt-get instala samba smbclient cifs-utils

Verifique se a pasta compartilhada no RPI está pronta:

sudo smbclient -L yourRPI_IP

se você vir a unidade de compartilhamento, crie um ponto de montagem no Linux:

sudo mkdir / mnt / researchRPi

sudo chown usuário: usergroup -R / mnt / researchRPI

usuário, grupo de usuários é o seu usuário Linux e nome de grupo

em seguida, monte o compartilhamento:

sudo mount -f cifs -o username = pi // your_rpi_IP / sambaShare / mnt / researchRPi

digite suas senhas e crie um link virtual para sua área de trabalho:

sudo ln -s / mnt / researchRPi ~ / Desktop / researchRPi

se você tiver problemas com a permissão de leitura e gravação na pasta de compartilhamento, experimente uma permissão fraca:

no PI:

sudo chmod -R 776 ~ / Desktop / sambaShare

No Windows, é ainda mais fácil, Vá para Meu Computador e mapeie uma pasta, em seguida, digite o IP do RPI, a pasta compartilhada deve aparecer. Eu acredito que há algo no Mac que você pode navegar na pasta compartilhada na rede.

Etapa 5: referências úteis

Abaixo estão algumas referências úteis:

  1. Há outra abordagem aqui usando bibliotecas pyserial e numpy
  2. Uma visão abrangente da comunicação eletrônica começa com a instalação do Arduino IDE. Uma boa referência se você quiser um mergulho mais profundo.
  3. Uma escrita curta, mas concreta. Opções curtas e suficientes de alternativas para registrar os dados

Recomendado: