Kazalo:

Nastavitev od praske na Raspberry Pi do beleženja podatkov iz Arduina: 5 korakov
Nastavitev od praske na Raspberry Pi do beleženja podatkov iz Arduina: 5 korakov

Video: Nastavitev od praske na Raspberry Pi do beleženja podatkov iz Arduina: 5 korakov

Video: Nastavitev od praske na Raspberry Pi do beleženja podatkov iz Arduina: 5 korakov
Video: Веб-программирование – информатика для руководителей бизнеса 2016 2024, December
Anonim
Nastavite od začetka Raspberry Pi do beleženja podatkov iz Arduina
Nastavite od začetka Raspberry Pi do beleženja podatkov iz Arduina

Ta vadnica je za tiste, ki nimajo izkušenj z namestitvijo nove strojne ali programske opreme, kaj šele Python ali Linux.

Recimo, da ste naročili na Raspberry Pi (RPi) s kartico SD (vsaj 8 GB, jaz sem uporabil 16 GB, tip I) in napajalnikom (5 V, vsaj 2,5 A). Danes se odločite, da ga nastavite in beležite podatke iz Arduinosa. Pa začnimo!

Vadnica vključuje nastavitev Raspberry Pi od začetka, vključno z namiznim daljincem, pripravo Arduina s temperaturnimi senzorji 18B20 in izvajanje skripta Python v Raspberry Pi za zbiranje in shranjevanje podatkov. Post sem posodobil z dodajanjem samba share za prenos datoteke med gostiteljskim računalnikom (vašim računalnikom) in Raspberry Pi

1. korak: Pripravite Raspberry Pi

Pripravite Raspberry Pi
Pripravite Raspberry Pi
Pripravite Raspberry Pi
Pripravite Raspberry Pi
Pripravite Raspberry Pi
Pripravite Raspberry Pi
Pripravite Raspberry Pi
Pripravite Raspberry Pi
  1. Prenesite operacijski sistem za RPi. Priporočam polno različico Raspbiana, na primer tole tukaj.
  2. Predpostavimo, da imate delujoč računalnik v sistemu Windows, prenesite programsko opremo Rufus, da sliko napišete na kartico SD. Pomaknite se navzdol in si zagotovite rufus 3.0 (junij 2018)
  3. Razpakirajte datoteko Raspbian (4,6 GB) in previdno izberite ciljno kartico SD. Zapis slike na kartico traja približno 3 minute.
  4. Vstavite kartico SD v režo, napajalni kabel priključite v vrata mikro USB, zaslon s kablom HDMI, tipkovnico, miško ni obvezen.
  5. Počakajte, da se RPi zažene in prikaže namizje, pritisnite tipko Window, pojdite na Accessories/Terminal in Enter.
  6. Konfigurirajte RPi po vrsti:

sudo raspi-config

7. Spremenite nekaj stvari v konfiguraciji RPi:

  • V 1. Spremenite geslo
  • V 2. Omrežna možnost: Spremenite ime gostitelja (nekaj edinstvenega, moje je rpi1001) ter SSID in geslo za wifi.
  • V 4. Locatisation Možnosti: Spremenite časovni pas, tipkovnico, področno nastavitev
  • V 5. Možnosti vmesnika: Omogočite SSH (za prijavo prek ukazne vrstice), Omogočite VNC (za namizni daljinski upravljalnik)
  • V 7: Napredna možnost: Razširite datotečne sisteme:
  • Znova zaženite
  • Po zagonu: zaženite naslov IP z zagonom

sudo ifconfig

Če uporablja Ethernet, mora biti IP prvi blok IP, če uporabljate Wifi, je IP v tretjem bloku, na primer 192.168.1.40, zaženite ta ukaz za posodobitev distribucije Linuxa:

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

Zadnji bo izklopil RPi po končanih posodobitvah

8. Če ste pozabili opombo IP RPi ali pa ste jo nedavno spremenili, uporabite PowerShell (za iskanje v sistemu Windows vnesite PowerShell)

V PowerShellu za ping Rpi: p ing rpi1001.local –4 dobite nekaj takega 192.168.1.40. rpi1001 je moje ime gostitelja za moj Rpi.

9. Namestite VNCViewer, ta programska oprema deluje kot TeamViewer ali Desktop Remote v sistemu Windows (samo Win 10 Pro ima funkcijo Desktop Remote).

Namestite v računalnik z operacijskim sistemom Windows, v iskalno polje na vrhu VNCViewer vnesite IP RPi (192.168.1.40) ali ime gostitelja RPi (moje je rpi1001.local) in pritisnite Enter. Vnesite svoje ime geslo RPi, po želji izberite »Zapomni si geslo«. Če je bilo vse v redu, bi morali videti pojavno namizje Rpi.

10. Za prenos datoteke iz ali v TeamView je najpreprostejši način uporabe vgrajenega prenosa datotek s strani VNCView:

In to je to, lahko z malino zberete podatke in se po potrebi prijavite, da dobite podatke.

2. korak: Pripravite preprost primer za zbiranje podatkov iz Arduina

Pripravite preprost primer zbiranja podatkov iz Arduina
Pripravite preprost primer zbiranja podatkov iz Arduina
Pripravite preprost primer zbiranja podatkov iz Arduina
Pripravite preprost primer zbiranja podatkov iz Arduina

Recimo, da želite zbrati temperaturo iz 4 senzorjev. V tem primeru sem uporabil 18B20, priljubljen temperaturni senzor. Druge možnosti so družina TMP35, 36 ali termistor.

Ožičenje je vključeno zgoraj. 18B20 si delijo žico (ali vodilo), tukaj pa je koda Arduino na Githubu. Priloga v spodnji datoteki vsebuje tudi kode in zemljevid ožičenja.

Namestite tudi gonilnik USB za Arduino v sistemu Windows. Večina "kloniranih" Arduino uporablja gonilnik USB CH341. Voznik je tukaj.

Namestite gonilnik, ko priklopi Arduino na USB v sistemu Windows, mora prepoznati gonilnik in dodeliti vrata COM (moj je COM4)

Serijski monitor bi moral delovati kot zgornja fotografija.

3. korak: Zaženite RPi tako, da odklopite in priključite napajanje na RPi. Zaženite VNCViewer, prijavite se v RPi

Zaženite RPi tako, da odklopite in priključite napajanje na RPi. Zaženite VNCViewer, prijavite se v RPi
Zaženite RPi tako, da odklopite in priključite napajanje na RPi. Zaženite VNCViewer, prijavite se v RPi
Zaženite RPi tako, da odklopite in priključite napajanje na RPi. Zaženite VNCViewer, prijavite se v RPi
Zaženite RPi tako, da odklopite in priključite napajanje na RPi. Zaženite VNCViewer, prijavite se v RPi
Zaženite RPi tako, da odklopite in priključite napajanje na RPi. Zaženite VNCViewer, prijavite se v RPi
Zaženite RPi tako, da odklopite in priključite napajanje na RPi. Zaženite VNCViewer, prijavite se v RPi
Zaženite RPi tako, da odklopite in priključite napajanje na RPi. Zaženite VNCViewer, prijavite se v RPi
Zaženite RPi tako, da odklopite in priključite napajanje na RPi. Zaženite VNCViewer, prijavite se v RPi

Prenesite skript Python z orodjem VNCViewer. Na vrhu VNCViewerja je pasica, poiščite gumb s dvema puščicama. Za prenos podatkov iz RPi v Windows uporabite simbol File Transfer in VNC v zgornjem desnem kotu (blizu simbola Wifi) na namizju RPi.

Raspberry deluje v Linuxu, Python 2 in 3 pa sta privzeto nameščena. Za zbiranje podatkov, natisnjenih iz serijske vrstice, morate namestiti le knjižnico Python, imenovano pyserial.

če želite namestiti python Serial, vnesite to vrstico v terminal Linux

sudo apt-get install python3-serial

  • v sistemu Windows: vnesite to PowellShell:
  • pip.exe namestite pyserlal

Nato prenesite skript in ga shranite na namizje RPi

Če želite zagnati skript, ga najprej izvedite tako:

sudo chown u+x recordSerial.py

Naložite kodo Arduino na ploščo Arduino, nato priključite kabel USB z USB v, preverite vrata tako:

  • V Linuxu vnesite to v terminal: ls /dev /ttyUSB*
  • Na Wndows: pojdite v Upravitelj naprav, preverite COM #

Če je skript spremenjen v sistemu Windows, boste morda morali zagnati skript Python v dos2unix, da odstranite čuden zaključni znak vrstice v sistemu Windows. Namestite ga do

sudo apt-get install dos2unix

in pretvorite skript tako, da ga zaženete v terminalu

dos2unix recordSerial.py

Urejevalnik besedila je spremenil dejanska vrata v skriptu:

sudo nano recordSerial.py

nato zaženite./recordSerial.py yourfilename.txt

Skript Python bo shranil podatke iz RAM -a na disk za vsakih 10 vrstic, ki jih je mogoče prilagoditi.

Če želite ustaviti snemanje, pritisnite Ctrl + C, Skript je mogoče zagnati v sistemu Windows (dvojni klik), privzeto je ime dnevnika, ki vključuje časovni žig

Če uporabljate PowerShell, lahko vnesete prilagojeno ime datoteke, python.exe recordSerial.py awesome.txt

Niso vsi 18B20 enaki. Oglejte si odčitavanje!

Kodo sem potisnil tudi v GitHub.

Upam, da je ta vadnica v pomoč!

4. korak: Namestite Sambo za skupno rabo mape

Namestite Sambo za skupno rabo mape
Namestite Sambo za skupno rabo mape
Namestite Sambo za skupno rabo mape
Namestite Sambo za skupno rabo mape
Namestite Sambo za skupno rabo mape
Namestite Sambo za skupno rabo mape

Ta korak vas bo popeljal skozi nekaj osnovnih nastavitev za gostovanje mape v skupni rabi na Raspberry Pi, do katere lahko dostopate iz drugih računalnikov.

Najprej namestite samba, program za skupno rabo in upravljanje mape za skupno rabo po omrežju:

sudo apt-get install samba

ustvarite mapo v skupni rabi

mkdir ~/Namizje/sambaShare

spremenite konfiguracijsko datoteko sambe tako:

sudo samba /etc/samba/smb.conf

na konec datoteke dodajte naslednje vrstice:

[sambaShare] komentar = delite mapo na poti RPI Research =/home/pi/Desktop/sambaShare browseable = da samo za branje = ne writable = ja javno = da ustvari masko = 0777 rectory mask = 0777 gost ok = da

Če imate težave s pisanjem v okna, jo prisilite tako, da na konec datoteke dodate to vrstico: force user = pi

V Linuxu boste morda morali uporabiti korenskega uporabnika (ko bom izvedel, bom objavil težavo)

Nato dodajte uporabnika v sambo in ustvarite tudi geslo:

sudo smbpasswd -a pi

nato vnesite geslo za sambo (lahko je enako ali različno od gesla za uporabnika pi v sistemu)

preizkusite, ali je konfiguracijska datoteka v redu

testparm

pritisnite Ctrl+X, da shranite, in nato znova zaženite storitev samba:

sudo systemctl znova zaženi smbd

Na gostiteljskem računalniku recimo Linux:

če ne, namestite sambo plus sambaclient in cifs za podporo pogona za skupno rabo, to storite tako:

sudo apt-get namesti samba smbclient cifs-utils

Ali je mapa v skupni rabi na RPI pripravljena:

sudo smbclient -L yourRPI_IP

če vidite pogon za skupno rabo, ustvarite točko namestitve v Linuxu:

sudo mkdir /mnt /researchRPi

uporabnik sudo chown: usergroup -R /mnt /researchRPI

user, usergroup je vaše ime uporabnika in skupine za Linux

nato namestite delež tako:

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

vnesite gesla in naredite mehko povezavo do namizja:

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

če imate težave z dovoljenjem za branje in pisanje v mapi za skupno rabo, poskusite s šibkim dovoljenjem:

na PI:

sudo chmod -R 776 ~/Namizje/sambaShare

V sistemu Windows je še lažje, Pojdite v Moj računalnik in preslikajte mapo, nato vnesite IP RPI, prikazala bi se mapa v skupni rabi. Verjamem, da v Macu obstaja nekaj, po čemer lahko brskate po mapi v skupni rabi v omrežju.

5. korak: Koristne reference

Spodaj je nekaj uporabnih referenc:

  1. Tukaj obstaja še en pristop z uporabo knjižnic pyserial in numpy
  2. Celovit pogled na elektronsko komunikacijo se začne z namestitvijo Arduino IDE. Dobra referenca, če želite globlji potop.
  3. Kratek, a konkreten zapis. Kratke in zadostne možnosti za druge možnosti za beleženje podatkov

Priporočena: