Sommario:
- Passaggio 1: preparare Raspberry Pi
- Passaggio 2: preparare un semplice esempio per raccogliere dati da Arduino
- Passaggio 3: avvia RPi scollegando e collegando l'alimentazione a RPi. Avvia VNCViewer, accedi al tuo RPi
- Passaggio 4: installa Samba per condividere la cartella
- Passaggio 5: riferimenti utili
Video: Configura da zero un Raspberry Pi per registrare i dati da Arduino: 5 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:03
Questo tutorial è per coloro che non hanno esperienza con l'installazione di un nuovo hardware o software, per non parlare di Python o Linux.
Diciamo che hai ordinato a Raspberry Pi (RPi) con scheda SD (almeno 8 GB, ho usato 16 GB, tipo I) e alimentazione (5 V, almeno 2,5 A). Oggi decidi di configurarlo e registrare i dati da Arduinos. Quindi cominciamo!
Il tutorial include la configurazione di Raspberry Pi dall'inizio, incluso Desktop Remote, la preparazione di un Arduino con sensori di temperatura 18B20 e l'esecuzione di uno script Python in Raspberry Pi per raccogliere e salvare i dati. Ho aggiornato il post con l'aggiunta della condivisione samba per trasferire il file tra il computer host (il tuo PC) e il Raspberry Pi
Passaggio 1: preparare Raspberry Pi
- Scarica il sistema operativo per RPi. Raccomando una versione completa di Raspbian, come questa qui.
- Supponiamo di avere un computer funzionante con Windows, scarica il software Rufus per scrivere l'immagine sulla scheda SD. Scorri verso il basso e ottieni rufus 3.0 (giugno 2018)
- Decomprimi il file Raspbian (4,6 GB) e seleziona attentamente la tua scheda SD di destinazione. Sono necessari circa 3 minuti per completare la scrittura dell'immagine sulla scheda.
- Inserisci la scheda SD nello slot, collega il cavo di alimentazione alla porta micro USB, un display con cavo HDMI, una tastiera, un mouse è opzionale.
- Attendi fino a quando RPi si avvia e mostra il desktop, premi il tasto Finestra, vai su Accessori/Terminale e Invio.
- Configura RPi per tipo:
sudo raspi-config
7. Cambia un paio di cose nella configurazione di RPi:
- In 1. Cambia password
- In 2. Opzione di rete: cambia nome host (qualcosa di unico, il mio è rpi1001) e SSID e password wifi.
- In 4. Opzioni di localizzazione: cambia fuso orario, tastiera, impostazioni internazionali
- In 5. Opzioni di interfaccia: Abilita SSH (per accedere tramite riga di comando), Abilita VNC (per desktop remoto)
- In 7: Opzione avanzata: Espandi filesystem:
- Riavviare
- Dopo l'avvio: annotare l'indirizzo IP eseguendo
sudo ifconfig
Se si utilizza Ethernet, l'IP dovrebbe essere il primo blocco, se si utilizza il Wifi, l'IP è nel terzo blocco, qualcosa come 192.168.1.40, eseguire questo comando per aggiornare la distribuzione Linux:
sudo apt-get update && sudo apt-get upgrade –y && sudo poweroff
L'ultimo spegnerà l'RPi dopo aver completato gli aggiornamenti
8. Se hai dimenticato la nota l'IP di RPi, o è cambiato di recente, usa PowerShell (digita PowerShell per cercare la casella in Windows)
In PowerShell per eseguire il ping di Rpi: ping rpi1001.local -4 ottieni qualcosa di simile a questo 192.168.1.40. rpi1001 è il mio nome host per il mio Rpi.
9. Installa VNCViewer, questo software funziona come TeamViewer o Desktop Remote su Windows (solo Win 10 Pro ha la funzione Desktop Remote).
Installa sul tuo computer Windows, nella casella di ricerca nella parte superiore di VNCViewer, digita l'IP di RPi (192.168.1.40) o il nome host di RPi (il mio è rpi1001.local) e Invio. Inserisci il tuo nome e la password di RPi, seleziona "Ricorda password" se lo desideri. Se tutto è andato bene, dovresti vedere il desktop Rpi pop-up.
10. Per trasferire file da o verso TeamView, il modo più semplice per utilizzare il trasferimento file integrato di VNCView:
E che puoi usare un Raspberry per raccogliere dati per te e accedere per ottenere dati quando necessario.
Passaggio 2: preparare un semplice esempio per raccogliere dati da Arduino
Diciamo che vuoi raccogliere la temperatura da 4 sensori. In questo esempio, ho usato 18B20, un popolare sensore di temperatura. Altre opzioni sono la famiglia TMP35, 36 o un termistore.
Il cablaggio è incluso sopra. I 18B20 condividono il filo (o bus), ed ecco il codice Arduino su Github. L'allegato nel file sottostante contiene anche i codici e la mappa del cablaggio.
Inoltre, installa il driver USB per Arduino in Windows. La maggior parte di Arduino "clona" utilizza il driver USB CH341. L'autista è qui.
Installa il driver, quando colleghi Arduino all'USB di Windows, dovrebbe riconoscere il driver e assegnare una porta COM (la mia è COM4)
Il monitor seriale dovrebbe produrre come la foto sopra.
Passaggio 3: avvia RPi scollegando e collegando l'alimentazione a RPi. Avvia VNCViewer, accedi al tuo RPi
Trasferisci lo script Python, utilizzando lo strumento VNCViewer. C'è un banner nella parte superiore del VNCViewer, cerca il pulsante con due frecce. Per trasferire dati da RPi a Windows, usa il simbolo Trasferimento file in VNC in alto a destra (vicino al simbolo Wifi) sul desktop di RPi.
Raspberry funziona su Linux e Python 2 e 3 sono installati per impostazione predefinita. Hai solo bisogno di installare una libreria Python chiamata pyserial per raccogliere i dati stampati dalla linea seriale.
per installare Python Serial, digita questa riga sul terminale Linux
sudo apt-get install python3-serial
- in Windows: digita questo PowellShell:
- pip.exe installa pyserlal
Quindi scarica lo script e salvalo sul desktop di RPi
Per eseguire lo script, prima rendilo eseguibile con:
sudo chown u+x recordSerial.py
Carica il codice Arduino sulla scheda Arduino, quindi collega il cavo USB con USB, controlla la porta:
- Su Linux, digita questo nel terminale: ls /dev/ttyUSB*
- Su Windows: vai in Gestione dispositivi, controlla COM #
Se lo script viene modificato su Windows, potrebbe essere necessario eseguire lo script Python su dos2unix per rimuovere il carattere strano di fine riga da Windows. Installalo da
sudo apt-get install dos2unix
e converti lo script eseguendolo nel terminale
dos2unix recordSerial.py
Modificata la porta effettiva nello script da un editor di testo:
sudo nano recordSerial.py
quindi esegui./recordSerial.py nomefile.txt
Lo script Python salverà i dati dalla RAM al disco ogni 10 righe, che possono essere regolate.
Per interrompere la registrazione, premi Ctrl + C, Lo script può essere eseguito su Windows (doppio clic), il nome dei dati di registro è l'impostazione predefinita che include un timestamp
Se usi PowerShell, puoi inserire il tuo nome file personalizzato, python.exe recordSerial.py impressionante.txt
Non tutti i 18B20 sono uguali. Guarda la lettura!
Ho anche inviato il codice a GitHub.
Spero che questo tutorial sia utile!
Passaggio 4: installa Samba per condividere la cartella
Questo passaggio ti guiderà attraverso alcune impostazioni di base per avere una cartella condivisa ospitata su Raspberry Pi a cui è possibile accedere da altri computer.
Innanzitutto, installa samba, un programma per condividere e gestire la cartella di condivisione in rete:
sudo apt-get install samba
creare una cartella condivisa
mkdir ~/Desktop/sambaShare
modificare il file di configurazione per samba con:
sudo samba /etc/samba/smb.conf
aggiungi le seguenti righe alla fine del file:
[sambaShare] comment = condividi cartella su ricerca RPI percorso = /home/pi/Desktop/sambaShare sfogliabile = si sola lettura = no scrivibile = si public = si crea maschera = 0777 canonica mask = 0777 ospite ok = si
Se hai il problema con la scrittura su Windows, forzalo aggiungendo questa riga alla fine del file: force user = pi
Su Linux, potrebbe essere necessario utilizzare l'utente root (pubblicherò il problema una volta scoperto)
Quindi, aggiungi un utente a samba e crea anche una password:
sudo smbpasswd -a pi
quindi inserisci una password per samba (può essere uguale o diversa dalla password per l'utente pi sul sistema)
prova se il file di configurazione va bene
testparm
premi Ctrl+X per salvare, quindi riavvia il servizio samba con:
sudo systemctl riavvia smbd
Sul computer host, diciamo Linux:
in caso contrario, installa samba plus sambaclient e cifs per supportare l'unità di condivisione, esegui l'operazione:
sudo apt-get installa samba smbclient cifs-utils
Controlla se la cartella condivisa su RPI è pronta:
sudo smbclient -L yourRPI_IP
se vedi l'unità di condivisione, crea un punto di montaggio su Linux:
sudo mkdir /mnt/researchRPi
sudo chown user:usergroup -R /mnt/researchRPI
user, usergroup è il tuo utente Linux e il nome del gruppo
quindi monta la condivisione di:
sudo mount -f cifs -o username=pi //your_rpi_IP/sambaShare /mnt/researchRPi
inserisci le tue password e crea un collegamento software al tuo desktop:
sudo ln -s /mnt/researchRPi ~/Desktop/researchRPi
se hai problemi con l'autorizzazione di lettura-scrittura sulla cartella condivisa, prova con un'autorizzazione debole:
su PI:
sudo chmod -R 776 ~/Desktop/sambaShare
Su Windows è ancora più semplice, Vai su Risorse del computer e mappa una cartella, quindi inserisci l'IP di RPI, dovrebbe apparire la cartella condivisa. Credo che ci sia qualcosa su Mac che puoi sfogliare nella cartella condivisa in rete.
Passaggio 5: riferimenti utili
Di seguito alcuni riferimenti utili:
- C'è un altro approccio qui usando le librerie pyserial e numpy
- Uno sguardo completo alla comunicazione elettronica inizia dall'installazione di Arduino IDE. Un buon riferimento se vuoi un'immersione più profonda.
- Uno scritto breve ma concreto. Opzioni brevi e sufficienti per le alternative per registrare i dati
Consigliato:
Crea bellissimi grafici dai dati di Arduino in tempo reale (e salva i dati in Excel): 3 passaggi
Crea bellissimi grafici dai dati di Arduino in tempo reale (e salva i dati in Excel): a tutti noi piace giocare con la nostra funzione P…lotter nell'IDE di Arduino. Tuttavia, sebbene possa essere utile per le applicazioni di base, i dati vengono cancellati man mano che più si aggiungono punti e non è particolarmente gradevole alla vista. Il plotter Arduino IDE non
Configura Linux per Windows!: 12 passaggi
Configura Linux per Windows!: Benvenuto nel set di istruzioni per configurare Linux per Windows! Questo set di istruzioni aiuta i principianti a configurare un sistema Ubuntu Linux da riga di comando sulla propria macchina Windows e connettere i propri file Windows al proprio sistema Linux. I sottosistemi Linux
Come registrare i dati della stazione meteorologica - Liono Maker: 5 passaggi
Come registrare i dati della stazione meteorologica | Liono Maker: Introduzione: Ciao, sono #LionoMaker. Questo è il mio canale YouTube ufficiale e open source. Ecco il link: Liono Maker / YOUTUBE CHANNELIn questo progetto impareremo come realizzare "Logging Weather Station Data". questo è molto interessante p
Configura Waveshare Game Hat per Recalbox e Kodi: 4 passaggi
Configura il cappello da gioco Waveshare per Recalbox e Kodi: il cappello da gioco Waveshare è una buona aggiunta al tuo Raspberry Pi 3B o 3B+ trasformandolo in una macchina da gioco retrò e una stazione video Kodi. Sebbene il cappello del gioco Waveshare sia dotato di immagini e driver di torta retrò scaricabili, non ci sono molte istruzioni
Come programmare Audacity per registrare in un determinato momento: 8 passaggi
Come programmare Audacity per registrare in un determinato momento: è un trucco veloce, usalo per spiare, per registrare una telefonata o semplicemente per registrare il tuo discorso di classe di storia mentre sei fuori Uso della popolare app open source Audacitylet inizia