Indholdsfortegnelse:

Opsætning fra bunden af en Raspberry Pi til logdata fra Arduino: 5 trin
Opsætning fra bunden af en Raspberry Pi til logdata fra Arduino: 5 trin

Video: Opsætning fra bunden af en Raspberry Pi til logdata fra Arduino: 5 trin

Video: Opsætning fra bunden af en Raspberry Pi til logdata fra Arduino: 5 trin
Video: Raspberry Pi Beginner's Guide: Install and Setup NOOBS 2024, November
Anonim
Opsætning fra bunden af en Raspberry Pi til logdata fra Arduino
Opsætning fra bunden af en Raspberry Pi til logdata fra Arduino

Denne vejledning er for dem, der ikke har erfaring med at installere en ny hardware eller software, endsige Python eller Linux.

Lad os sige, at du har bestilt til Raspberry Pi (RPi) med SD -kort (mindst 8 GB, jeg brugte 16 GB, type I) og strømforsyning (5V, mindst 2,5A). I dag beslutter du dig for at konfigurere det og registrere data fra Arduinos. Så lad os begynde!

Undervisningen inkluderer opsætning af Raspberry Pi fra begyndelsen, herunder Desktop Remote, forberedelse af en Arduino med 18B20 temperatursensorer og eksekvering af et Python -script i Raspberry Pi for at indsamle og gemme data. Jeg opdaterede indlægget med tilføjelse af samba -share for at overføre filen mellem værtscomputeren (din pc) og Raspberry Pi

Trin 1: Forbered Raspberry Pi

Forbered Raspberry Pi
Forbered Raspberry Pi
Forbered Raspberry Pi
Forbered Raspberry Pi
Forbered Raspberry Pi
Forbered Raspberry Pi
Forbered Raspberry Pi
Forbered Raspberry Pi
  1. Download operativsystemet til RPi. Jeg anbefaler en fuld version af Raspbian, sådan her.
  2. Antag, at du har en fungerende computer, der kører på Windows, download Rufus -software for at skrive billedet til SD -kortet. Rul ned og få rufus 3.0 (juni 2018)
  3. Pak Raspbian -filen ud (4,6 GB), og vælg omhyggeligt dit mål -SD -kort. Det tager cirka 3 minutter at fuldføre skrivningen af billedet til kortet.
  4. Sæt SD -kortet i stikket, tilslut strømkablet til mikro -USB -porten, en skærm med HDMI -kabel, et tastatur, en mus er valgfri.
  5. Vent, indtil RPi starter, og vis skrivebordet, tryk på vinduetasten, gå til Tilbehør/Terminal og Enter.
  6. Konfigurer RPi efter type:

sudo raspi-config

7. Skift par ting i RPi -konfiguration:

  • I 1. Skift adgangskode
  • I 2. Netværksmulighed: Skift værtsnavn (noget unikt, mit er rpi1001) og wifi SSID og adgangskode.
  • I 4. Lokaliseringsindstillinger: Skift tidszone, tastatur, landestandard
  • I 5. Grænsefladeindstillinger: Aktiver SSH (for at logge ind via kommandolinje), Aktiver VNC (til desktop -fjernbetjening)
  • I 7: Advance Option: Udvid filsystemer:
  • Genstart
  • Efter opstart: Bemærk IP -adressen ved at køre

sudo ifconfig

Hvis Ethernet bruger, skal IP'en være den første blok, hvis Wifi bruges, er IP'en på den tredje blok, sådan som 192.168.1.40, kør denne kommando for at opdatere Linux -distroen:

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

Den sidste slukker RPi'en, efter at den er færdig med opdateringerne

8. Hvis du har glemt notatet IP'en for RPi, eller den er ændret for nylig, skal du bruge PowerShell (skriv PowerShell til søgefelt i Windows)

I PowerShell for at pinge Rpi: p ing rpi1001.local –4 få noget i stil med denne 192.168.1.40. rpi1001 er mit værtsnavn for min Rpi.

9. Installer VNCViewer, denne software fungerer som TeamViewer eller Desktop Remote på Windows (kun Win 10 Pro har Desktop Remote -funktion).

Installer på din Windows -maskine, i søgefeltet øverst i VNCViewer, indtast RPi's IP (192.168.1.40) eller RPis værtsnavn (mit er rpi1001.local) og Enter. Indtast dit navn RPi's adgangskode, vælg 'Husk adgangskode', hvis det ønskes. Hvis alt gik godt, skulle du se pop-up Rpi-skrivebordet.

10. Sådan overføres fil fra eller til TeamView, den enkleste måde at bruge indbygget filoverførsel med VNCView:

Og at det, du kan bruge en hindbær til at indsamle data for dig, og logge ind for at få data, når det er nødvendigt.

Trin 2: Forbered enkelt eksempel til indsamling af data fra Arduino

Forbered et enkelt eksempel på at indsamle data fra Arduino
Forbered et enkelt eksempel på at indsamle data fra Arduino
Forbered et enkelt eksempel på at indsamle data fra Arduino
Forbered et enkelt eksempel på at indsamle data fra Arduino

Lad os sige, at du vil indsamle temperaturen fra 4 sensorer. I dette eksempel brugte jeg 18B20, en populær temperatursensor. Andre muligheder er TMP35, 36 familien eller en termistor.

Ledningerne er inkluderet ovenfor. 18B20'erne deler ledningen (eller bussen), og her er Arduino -koden på Github. Vedhæftede filer i nedenstående fil indeholder også koderne og ledningskortet.

Installer også USB -driveren til Arduino i Windows. De fleste 'klon' Arduino bruger CH341 USB -driver. Chaufføren er her.

Installer driver, når Arduino tilsluttes din Windows 'USB, skal den genkende driveren og tildele en COM -port (min er COM4)

Den serielle skærm skal udskrive som billedet ovenfor.

Trin 3: Start RPi op ved at tage stikket ud og tilslut RPi. Start VNCViewer, log ind på din RPi

Start RPi ved at tage stikket ud, og tilslut strøm til RPi. Start VNCViewer, log på din RPi
Start RPi ved at tage stikket ud, og tilslut strøm til RPi. Start VNCViewer, log på din RPi
Start RPi ved at tage stikket ud, og tilslut strøm til RPi. Start VNCViewer, log på din RPi
Start RPi ved at tage stikket ud, og tilslut strøm til RPi. Start VNCViewer, log på din RPi
Start RPi ved at tage stikket ud, og tilslut strøm til RPi. Start VNCViewer, log ind på din RPi
Start RPi ved at tage stikket ud, og tilslut strøm til RPi. Start VNCViewer, log ind på din RPi
Start RPi ved at tage stikket ud, og tilslut strøm til RPi. Start VNCViewer, log ind på din RPi
Start RPi ved at tage stikket ud, og tilslut strøm til RPi. Start VNCViewer, log ind på din RPi

Overfør Python -scriptet ved hjælp af VNCViewer -værktøj. Der er et banner øverst på VNCViewer, se efter to pile -knap. For at overføre data fra RPi til Windows skal du bruge filoverførsel i VNC-symbolet øverst til højre (nær Wifi-symbolet) på RPi's skrivebord.

Hindbær kører på Linux, og Python 2 og 3 er som standard installeret. Du behøver kun at installere et Python -bibliotek kaldet pyserial for at indsamle data, der udskrives fra den serielle linje.

For at installere python Serial, skriv denne linje til Linux -terminal

sudo apt-get install python3-serial

  • i Windows: skriv denne PowellShell:
  • pip.exe installer pyserlal

Download derefter scriptet og gem det på RPi's skrivebord

For at køre scriptet skal du først gøre det eksekverbart ved at:

sudo chown u+x recordSerial.py

Upload Arduino -koden til Arduino -kortet, og sæt derefter dit USB -kabel med USB i, tjek porten ved at:

  • På Linux skal du skrive dette til terminalen: ls /dev /ttyUSB*
  • I Windows: gå til Enhedshåndtering, tjek COM #

Hvis scriptet er ændret på Windows, skal du muligvis køre Python -scriptet til dos2unix for at fjerne underlig linjeafslutningstegn af Windows. Installer det ved

sudo apt-get install dos2unix

og konverter scriptet ved at køre dette i terminalen

dos2unix recordSerial.py

Ændrede den faktiske port i scriptet af en teksteditor:

sudo nano recordSerial.py

kør derefter./recordSerial.py dit filnavn.txt

Python -scriptet gemmer dataene fra RAM'en til disken for hver 10 linje, som kan justeres.

For at stoppe optagelsen skal du trykke på Ctrl + C, Scriptet kan køres på Windows (dobbeltklik), navnet på logdata er standard, som indeholder et tidsstempel

Hvis du PowerShell, kan du indtaste dit tilpassede filnavn, python.exe recordSerial.py awesome.txt

Ikke alle 18B20'er er ens. Se aflæsningen!

Jeg skubbede også koden til GitHub.

Håber denne vejledning er nyttig!

Trin 4: Installer Samba for at dele mappe

Installer Samba for at dele mappe
Installer Samba for at dele mappe
Installer Samba for at dele mappe
Installer Samba for at dele mappe
Installer Samba for at dele mappe
Installer Samba for at dele mappe

Dette trin vil guide dig gennem nogle grundlæggende opsætninger for at få en delt mappe hostet på Raspberry Pi, der kan tilgås fra andre computere.

Installer først samba, et program til at dele og administrere delingsmappe på tværs af netværket:

sudo apt-get install samba

lav en delt mappe

mkdir ~/Desktop/sambaShare

rediger konfigurationsfilen for samba ved at:

sudo samba /etc/samba/smb.conf

tilføj følgende linjer til slutningen af filen:

[sambaShare] kommentar = del mappe om Research RPI path =/home/pi/Desktop/sambaShare browseable = ja skrivebeskyttet = ingen skrivbar = ja offentlig = ja opret maske = 0777 præstegårdsmaske = 0777 gæst ok = ja

Hvis du har problemet med at skrive på Windows, skal du tvinge den ved at tilføje denne linje til slutningen af filen: force user = pi

På Linux skal du muligvis bruge rodbrugeren (jeg sender problemet, når jeg fandt ud af det)

Tilføj derefter en bruger til samba og opret også en adgangskode:

sudo smbpasswd -a pi

indtast derefter en adgangskode til samba (kan være den samme eller anderledes end adgangskoden til pi -bruger på systemet)

test om konfigurationsfilen er i orden

testparm

tryk på Ctrl+X for at gemme, og genstart derefter samba -tjenesten ved at:

sudo systemctl genstart smbd

Lad os sige Linux på værtscomputeren:

hvis ikke ja installer samba plus sambaclient og cifs for at understøtte deledrevet, gør det ved at køre:

sudo apt-get installer samba smbclient cifs-utils

Kontroller, om den delte mappe på RPI er klar ved at:

sudo smbclient -L dinRPI_IP

hvis du ser delingsdrevet, skal du oprette et monteringspunkt på Linux:

sudo mkdir /mnt /researchRPi

sudo chown -bruger: brugergruppe -R /mnt /researchRPI

bruger, brugergruppe er din Linux -bruger og gruppenavn

monter derefter andelen ved at:

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

indtast dine adgangskoder, og lav et blødt link til dit skrivebord:

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

Hvis du har problemer med læse-skrive-tilladelse i delingsmappen, kan du eksperimentere med en svag tilladelse:

på PI:

sudo chmod -R 776 ~/Desktop/sambaShare

På Windows er det endnu lettere, Gå til Denne computer, og kortlæg en mappe, indtast derefter IP'en for RPI, den delte mappe skal vises. Jeg tror, der er noget på Mac, som du kan gennemse den delte mappe på netværket.

Trin 5: Nyttige referencer

Nedenfor er nogle nyttige referencer:

  1. Der er en anden tilgang her ved hjælp af pyseriale og numpy -biblioteker
  2. Et omfattende kig på den elektroniske kommunikation starter ved installation af Arduino IDE. En god reference, hvis du vil have et dybere dyk.
  3. En kort, men konkret skrift. En kort og tilstrækkelig mulighed for alternativer til at logge data

Anbefalede: