Sisukord:
- Samm: hädavajalikud seadmed, mida vajame
- Samm: riistvaraühendused vooluahela kokkupanekuks
- Samm: Raspberry Pi programmeerimine Java -s
- 4. samm: koodeksi praktilisus (töötamine)
- Samm: rakendused ja funktsioonid
- 6. samm: järeldus
Video: Raspberry Pi kasutamine, mõõtke kõrgust, rõhku ja temperatuuri MPL3115A2 abil: 6 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:48
Tea, mis sulle kuulub, ja tea, miks see sulle kuulub
See on intrigeeriv. Me elame Interneti -automatiseerimise ajastul, kuna see sukeldub paljude uute rakenduste hulka. Arvuti- ja elektroonikaharrastajatena oleme Raspberry Pi -ga palju õppinud ja otsustasime oma huvid omavahel ühendada. See projekt võtab umbes tund aega, kui olete I²C -ühenduste ja tarkvara häälestamise osas uus, ning see on suurepärane võimalus laiendada MPL3115A2 võimalusi koos Raspberry Pi -ga Java -s.
Samm: hädavajalikud seadmed, mida vajame
1. Vaarika Pi
Esimene samm oli Raspberry Pi tahvli hankimine. Seda väikest geeniust kasutavad harrastajad, õpetajad ja uuenduslike keskkondade loomisel.
2. I2C kilp Raspberry Pi jaoks
INPI2 (I2C adapter) pakub Raspberry Pi 2/3 an I²C porti kasutamiseks mitme I2C seadmega. See on saadaval Dcube'i poes.
3. Kõrgusmõõtur, rõhu- ja temperatuuriandur, MPL3115A2
MPL3115A2 on IEM -liidesega MEMS -rõhuandur, mis annab andmeid rõhu, kõrguse ja temperatuuri kohta. See andur kasutab suhtlemiseks I²2 protokolli. Ostsime selle anduri Dcube Store'ist.
4. Ühenduskaabel
Kasutasime IcC ühenduskaablit, mis on saadaval Dcube Store'is.
5. Mikro -USB -kaabel
Raspberry Pi toiteallikaks on mikro -USB -toide.
6. Interneti -juurdepääsu parandamine - Etherneti kaabel/WiFi -moodul
Üks esimesi asju, mida soovite teha, on oma Raspberry Pi ühendamine Internetiga. Saate ühenduse luua Etherneti kaabli või traadita USB Nano WiFi -adapteri abil.
7. HDMI -kaabel (valikuline, teie valik)
Raspberry Pi saate HDMI -kaabli abil monitoriga ühendada. Samuti saate oma Raspberry Pi -le kaugjuurdepääsu kasutada SSH/PuTTY abil.
Samm: riistvaraühendused vooluahela kokkupanekuks
Tehke vooluring vastavalt näidatud skeemile. Üldiselt on ühendused üsna lihtsad. Järgige ülaltoodud juhiseid ja pilte ning probleeme ei tohiks tekkida. Planeerides vaatasime riistvara ja kodeerimist ning elektroonika põhitõdesid. Tahtsime selle projekti jaoks välja töötada lihtsa elektroonika skeemi. Diagrammil näete erinevaid osi, toiteelemente ja I²C andurit, mis järgivad I²C sideprotokolle. Loodetavasti illustreerib see, kui lihtne on selle projekti elektroonika.
Raspberry Pi ja I2C Shield ühendus
Selleks vaarikas Pi ja asetage sellele I²C kilp. Vajutage õrnalt kaitsekilbile (vt pilti).
Anduri ja Raspberry Pi ühendamine
Võtke andur ja ühendage sellega I²C kaabel. Veenduge, et I²C väljund ühendaks ALATI I²C sisendiga. Sama peab järgima ka Raspberry Pi, millele on paigaldatud I²C kilp. Meil on I²C Shield ja I²C ühenduskaablid meie kõrval väga suure eelisena, kuna meil on ainult plug and play võimalus. Enam pole tihvtide ja juhtmetega probleeme ning seega on segadus kadunud. Milline kergendus, kui kujutate end lihtsalt juhtmete võrku ja sellesse sattumist. Nii lihtne kui see on!
Märkus. Pruun juhe peaks alati järgima maandusühendust (GND) ühe seadme väljundi ja teise seadme sisendi vahel
Internetiühendus on ülioluline
Projekti õnnestumiseks vajame oma Raspberry Pi jaoks Interneti -ühendust. Siin on teil näiteks Etherneti (LAN) kaabli ühendamine. Samuti alternatiivse, kuid muljetavaldava viisina WiFi -adapteri kasutamiseks.
Vooluahela toide
Ühendage mikro -USB -kaabel Raspberry Pi pistikupessa. Lülitage see sisse ja voila, meil on hea minna!
Ühendus ekraaniga
Meil võib olla HDMI -kaabel monitoriga ühendatud või võime olla pisut uuenduslikud, et teha oma peata Pi (kasutades -SSH/PuTTY), mis aitab vähendada lisakulusid, sest oleme kuidagi harrastajad.
Kui harjumus hakkab raha maksma, nimetatakse seda hobiks
Samm: Raspberry Pi programmeerimine Java -s
Raspberry Pi ja MPL3115A2 anduri Java -kood. See on saadaval meie Githubi hoidlas.
Enne koodi juurde asumist lugege kindlasti läbi lugemisfailis antud juhised ja seadistage oma Raspberry Pi selle järgi. Selleks kulub vaid hetk. Kõrgus arvutatakse rõhu põhjal, kasutades järgmist võrrandit:
h = 44330,77 {1 - (p / p0) ^ 0,1902632} + OFF_H (registreerimisväärtus)
kus p0 = merepinna rõhk (101326 Pa) ja h on meetrites. MPL3115A2 kasutab seda väärtust, kuna nihkeregister on määratletud kui 2 paskalit LSB kohta. Kood on selgelt teie ees ja see on kõige lihtsamal kujul, mida võite ette kujutada, ja teil ei tohiks probleeme olla.
Siit saate kopeerida ka selle anduri töötava Java -koodi.
// Levitatakse vaba tahte litsentsiga. // MPL3115A2 // See kood on loodud töötama koos MPL3115A2_I2CS I2C minimooduliga, mis on saadaval saidil ControlEverything.com. //
import com.pi4j.io.i2c. I2CBus;
import com.pi4j.io.i2c. I2CDevice; import com.pi4j.io.i2c. I2CFactory; importige java.io. IOException;
avalik klass MPL3115A2
{public static void main (String args ) viskab Erand {// Loo I2C siin I2CBus Bus = I2CFactory.getInstance (I2CBus. BUS_1); // Hangi I2C seade, MPL3115A2 I2C aadress on 0x60 (96) I2CDevice device = Bus.getDevice (0x60); // Vali juhtregister // Aktiivne režiim, OSR = 128, kõrgusemõõturi režiim device.write (0x26, (bait) 0xB9); // Andmekonfiguratsiooni registri valimine // Andmete valmis sündmus on lubatud kõrguse, rõhu, temperatuuri seadme jaoks. Kirjutada (0x13, (bait) 0x07); // Vali juhtregister // Aktiivne režiim, OSR = 128, altimeeterrežiimi seade.write (0x26, (bait) 0xB9); Niit.unenägu (1000);
// Lugege 6 baiti andmeid aadressilt 0x00 (00)
// olek, tHeight msb1, tHeight msb, tHeight lsb, temp msb, temp lsb bait andmed = uus bait [6]; device.read (0x00, andmed, 0, 6);
// Teisendage andmed 20-bitisteks
int tKõrgus = ((((andmed [1] & 0xFF) * 65536) + ((andmed [2] ja 0xFF) * 256) + (andmed [3] ja 0xF0)) / 16); int temp = ((andmed [4] * 256) + (andmed [5] & 0xF0)) / 16; topeltkõrgus = tKõrgus / 16,0; kahekordne cTemp = (temp / 16,0); kahekordne fTemp = cTemp * 1,8 + 32;
// Valige juhtregister
// Aktiivne režiim, OSR = 128, baromeetrirežiimi seade. Kirjutama (0x26, (bait) 0x39); Niit.unenägu (1000); // Loe 4 baiti andmeid aadressilt 0x00 (00) // olek, pres msb1, pres msb, pres lsb device.read (0x00, andmed, 0, 4);
// Teisendage andmed 20-bitisteks
int pres = ((((andmed [1] & 0xFF) * 65536) + ((andmed [2] ja 0xFF) * 256) + (andmed [3] ja 0xF0)) / 16; kahekordne rõhk = (pres / 4,0) / 1000,0; // Väljundandmed ekraanile System.out.printf ("Rõhk: %.2f kPa %n", rõhk); System.out.printf ("Kõrgus: %.2f m %n", kõrgus); System.out.printf ("Temperatuur Celsiuse järgi: %.2f C %n", cTemp); System.out.printf ("Temperatuur Fahrenheiti järgi: %.2f F %n", fTemp); }}
4. samm: koodeksi praktilisus (töötamine)
Nüüd laadige kood alla (või tõmmake see alla) ja avage see Raspberry Pi -s. Käivitage terminali koodi kompileerimise ja üleslaadimise käsud ning vaadake monitori väljundit. Mõne sekundi pärast kuvatakse kõik parameetrid. Kui olete veendunud, et kõik töötab tõrgeteta, saate selle projekti võtta suuremaks projektiks.
Samm: rakendused ja funktsioonid
MPL3115A2 täpset kõrguseandurit kasutatakse tavaliselt sellistes rakendustes nagu kaart (kaardiabi, navigeerimine), magnetkompass või GPS (GPS -i surnud arvestus, hädaabiteenuste GPS -i täiustamine), kõrge täpsusega kõrguse mõõtmine, nutitelefonid/tahvelarvutid, isikliku elektroonika kõrguse mõõtmine ja Satelliidid (ilmajaamade varustus/prognoosimine).
Näiteks nt. Selle anduri ja Rasp Pi abil saate luua digitaalse visuaalse kõrgusmõõturi, mis on kõige olulisem langevarjuhüpete varustus, millega saab mõõta kõrgust, õhurõhku ja temperatuuri. Saate lisada tuulemarli ja muid andureid, et muuta see huvitavamaks.
6. samm: järeldus
Kuna programm on hämmastavalt kohandatav, on selle projekti laiendamiseks ja veelgi paremaks muutmiseks palju huvitavaid viise. Näiteks hõlmab kõrgusemõõtja/interferomeeter mitut mastidele paigaldatud kõrgusemõõtjat, mis teeksid mõõtmisi samaaegselt, tagades seega pideva, ühe- või mitme kõrgusega laia ala. Meil on YouTube'is huvitav videoõpetus, mis aitab teil sellest projektist paremini aru saada.
Soovitan:
Hoiatuste loomine-Ubidots-ESP32+temperatuuri ja niiskuse anduri kasutamine: 9 sammu
Hoiatuste loomine-Ubidots-ESP32+temperatuuri ja niiskuse anduri kasutamine: Selles õpetuses mõõdame temperatuuri ja niiskuse anduri abil erinevaid temperatuuri ja niiskuse andmeid. Samuti saate teada, kuidas neid andmeid Ubidotsile saata. Nii et saate seda erinevate rakenduste jaoks igal pool analüüsida. Samuti luues emai
DHT12 (i2c odava niiskuse ja temperatuuri andur), kiire lihtne kasutamine: 14 sammu
DHT12 (i2c odava niiskuse ja temperatuuri andur), kiire lihtne kasutamine: värskendusi ja muud leiate minu saidilt https://www.mischianti.org/2019/01/01/dht12-library-en/. Mulle meeldib see andur saab kasutada kahe juhtmega (i2c protokoll), kuid mulle meeldib odav. See on Arduino ja esp8266 raamatukogu DHT12 seeria jaoks
E-posti märguannete loomine traadita temperatuuri ja niiskuse anduri NCD abil punase sõlme abil: 22 sammu
E-posti märguannete loomine NCD traadita temperatuuri ja niiskuse anduri kohta sõlme-punase abil: kasutame siin NCD temperatuuri ja niiskuse andurit, kuid sammud jäävad kõigi ncd-toodete jaoks samaks, nii et kui teil on muid ncd traadita andureid, proovige seda tasuta kõrvalt kõrvalt jälgida. Selle teksti peatamise abil peate
Raspberry Pi / DHT11 - Mõõtke niiskust ja temperatuuri: 4 sammu
Raspberry Pi / DHT11 - mõõta niiskust ja temperatuuri: tahtsin oma Raspberry Pi abil temperatuuri ja niiskust mõõta. Valisin DHT11 anduri, kuna see on vastupidav ja odav. Selle seadistamine on samuti hästi dokumenteeritud, kuid sellel teel on mitmeid lõkse, millele tahaksin keskenduda. DHT11
Mõõtke oma ostsilloskoobi abil mürasse maetud pisikesi signaale (faasitundlik tuvastamine): 3 sammu
Mõõtke oma ostsilloskoobi abil mürasse maetud pisikesi signaale (faasitundlik tuvastamine): kujutage ette, et soovite mõõta pisikest signaali, mis on maetud palju tugevama müra alla. Vaadake videost, kuidas seda kiiresti teha, või lugege üksikasju