Índice:
- Etapa 1: preparar Raspberry Pi
- Etapa 2: preparar um exemplo simples para coletar dados do Arduino
- Etapa 3: Inicialize o RPi desconectando e conectando a energia ao RPi. Inicie o VNCViewer, faça login em seu RPi
- Etapa 4: Instale o Samba para compartilhar a pasta
- Etapa 5: referências úteis
Vídeo: Configurar do zero um Raspberry Pi para registrar dados do Arduino: 5 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:38
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
- Baixe o sistema operacional para RPi. Eu recomendo uma versão completa do Raspbian, como esta aqui.
- 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)
- 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.
- 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.
- Espere até o RPi inicializar e mostrar a área de trabalho, pressione a tecla Window, vá para Acessórios / Terminal e Enter.
- 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
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
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
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:
- Há outra abordagem aqui usando bibliotecas pyserial e numpy
- 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.
- Uma escrita curta, mas concreta. Opções curtas e suficientes de alternativas para registrar os dados
Recomendado:
Faça lindos gráficos a partir de dados do Arduino ao vivo (e salve os dados no Excel): 3 etapas
Faça lindos gráficos a partir de dados do Arduino ao vivo (e salve os dados no Excel): Todos nós gostamos de brincar com nossa função P … lotter no IDE do Arduino. No entanto, embora possa ser útil para aplicativos básicos, os dados são apagados conforme mais pontos são adicionados e não é particularmente agradável aos olhos. A plotadora IDE Arduino não
Como fazer um gravador de dados em tempo real de umidade e temperatura com o Arduino UNO e o cartão SD - Simulação de registrador de dados DHT11 em Proteus: 5 etapas
Como fazer um gravador de dados em tempo real de umidade e temperatura com o Arduino UNO e o cartão SD | Simulação DHT11 Data-logger em Proteus: Introdução: oi, aqui é Liono Maker, aqui está o link do YouTube. Estamos fazendo projetos criativos com Arduino e trabalhamos em sistemas embarcados.Data-Logger: Um data logger (também data-logger ou gravador de dados) é um dispositivo eletrônico que grava dados ao longo do tempo w
Como registrar dados da estação meteorológica. Liono Maker: 5 etapas
Como registrar dados da estação meteorológica. Liono Maker: Introdução: Olá, aqui é #LionoMaker. Este é meu código aberto e canal oficial do YouTube. Aqui está o link: Liono Maker / YOUTUBE CHANNELNeste projeto, aprenderemos como fazer " Registro de dados de estação meteorológica ". isso é muito interessante pr
Registrar ECG de alta velocidade ou outros dados, continuamente por mais de um mês: 6 etapas
Registrar ECG de alta velocidade ou outros dados, continuamente por mais de um mês: Este projeto foi desenvolvido para apoiar uma equipe de pesquisa médica da universidade, que precisava de um wearable que pudesse registrar 2 x sinais de ECG a 1000 amostras / s cada (2 mil amostras / s no total) continuamente por 30 dias, a fim de detectar arritmias. O projeto pres
Como buscar dados de um banco de dados Firebase no NodeMCU: 7 etapas
Como buscar dados de um banco de dados Firebase no NodeMCU: para isso, vamos buscar dados de um banco de dados no Google Firebase e buscá-los usando um NodeMCU para análise posterior. REQUISITOS DO PROJETO: 1) NodeMCU ou ESP8266 Controller2) G-Mail conta para a criação de um banco de dados Firebase.3) Baixe o