Përmbajtje:

Duke përdorur Raspberry Pi, matni lartësinë, presionin dhe temperaturën me MPL3115A2: 6 hapa
Duke përdorur Raspberry Pi, matni lartësinë, presionin dhe temperaturën me MPL3115A2: 6 hapa

Video: Duke përdorur Raspberry Pi, matni lartësinë, presionin dhe temperaturën me MPL3115A2: 6 hapa

Video: Duke përdorur Raspberry Pi, matni lartësinë, presionin dhe temperaturën me MPL3115A2: 6 hapa
Video: 🔴Cultivo de Jengibre y Cúrcuma en Maceta - En Casa 2024, Nëntor
Anonim
Image
Image
Pajisjet e domosdoshme që na duhen
Pajisjet e domosdoshme që na duhen

Dije atë që zotëron dhe di pse e zotëron

Intshtë intriguese. Ne po jetojmë në epokën e Automatizimit të Internetit pasi ai zhytet në një bollëk aplikimesh të reja. Si entuziastë të kompjuterit dhe elektronikës, ne kemi mësuar shumë me Raspberry Pi dhe vendosëm të ndërthurim interesat tona. Ky projekt zgjat rreth një orë nëse jeni i ri në lidhjet I²C dhe konfigurimin e Softuerit, dhe është një mënyrë e shkëlqyeshme për të zgjeruar aftësitë e MPL3115A2 me Raspberry Pi në Java.

Hapi 1: Pajisjet e domosdoshme që na duhen

Pajisjet e domosdoshme që na duhen
Pajisjet e domosdoshme që na duhen
Pajisjet e domosdoshme që na duhen
Pajisjet e domosdoshme që na duhen
Pajisjet e domosdoshme që na duhen
Pajisjet e domosdoshme që na duhen

1. Raspberry Pi

Hapi i parë ishte marrja e një bordi Raspberry Pi. Ky gjeni i vogël përdoret nga hobiistët, mësuesit dhe në krijimin e mjediseve inovative.

2. Mburoja I2C për Raspberry Pi

INPI2 (përshtatësi I2C) siguron Raspberry Pi 2/3 një port I²C për përdorim me pajisje të shumta I2C. Availableshtë në dispozicion në Dyqanin Dcube.

3. Altimetri, Sensori i Presionit dhe Temperaturës, MPL3115A2

MPL3115A2 është një sensor presioni MEMS me një ndërfaqe I²C për të dhënë të dhëna nga Presioni, Lartësia dhe Temperatura. Ky sensor përdor protokollin I²2 për komunikim. Ne e blemë këtë sensor nga Dyqani Dcube.

4. Kabllo lidhëse

Ne përdorëm kabllon lidhës I²C të disponueshëm në Dyqanin Dcube.

5. Kabllo mikro USB

Raspberry Pi mundësohet nga furnizimi me mikro USB.

6. Rritja e Qasjes në Internet - Moduli i Kabllos Ethernet/WiFi

Një nga gjërat e para që do të dëshironi të bëni është të lidhni Raspberry Pi tuaj në internet. Mund të lidheni duke përdorur një kabllo Ethernet ose me një përshtatës Wireless USB Nano WiFi.

7. Kabllo HDMI (Opsionale, Zgjedhja juaj)

Mund ta lidhni Raspberry Pi me një monitor duke përdorur një kabllo HDMI. Gjithashtu, mund të keni qasje në distancë në Raspberry Pi tuaj duke përdorur SSH/PuTTY.

Hapi 2: Lidhjet e pajisjeve për të bashkuar qarkun

Lidhjet e pajisjeve për të bashkuar qarkun
Lidhjet e pajisjeve për të bashkuar qarkun
Lidhjet e pajisjeve për të bashkuar qarkun
Lidhjet e pajisjeve për të bashkuar qarkun

Bëni qarkun sipas skemës së treguar. Në përgjithësi, lidhjet janë mjaft të thjeshta. Ndiqni udhëzimet dhe imazhet e mësipërme, dhe nuk duhet të keni probleme. Ndërsa planifikonim, ne shikuam bazat e harduerit dhe kodimit, si dhe elektronikën. Ne donim të krijonim një skemë të thjeshtë elektronike për këtë projekt. Në diagram, ju mund të vini re pjesët e ndryshme, komponentët e fuqisë dhe sensorin I²C që ndjekin protokollet e komunikimit I²C. Shpresojmë, kjo ilustron se sa e thjeshtë është pajisja elektronike për këtë projekt.

Lidhja e Raspberry Pi dhe I2C Shield

Për këtë, Raspberry Pi dhe vendosni IeldC Shield mbi të. Shtypni Shield me butësi (Shih fotografinë).

Lidhja e Sensorit dhe Raspberry Pi

Merrni sensorin dhe lidhni kabllon I²C me të. Sigurohuni që dalja I²C të lidhet GJITHMON me hyrjen e I²C. E njëjta gjë do të ndiqet nga Raspberry Pi me mburojën I²C të montuar mbi të. Ne kemi I²C Shield dhe kabllot lidhës I²C në anën tonë si një avantazh shumë i madh pasi na mbetet vetëm opsioni plug and play. Nuk ka më probleme me kunjat dhe instalimet elektrike dhe kështu, konfuzioni është zhdukur. Çfarë lehtësimi sapo të imagjinoni veten në rrjetën e telave dhe të futeni në të. Aq e thjeshtë sa kjo!

Shënim: Teli kafe duhet të ndjekë lidhjen Ground (GND) midis daljes së një pajisjeje dhe hyrjes së një pajisjeje tjetër

Lidhshmëria në internet është thelbësore

Për ta bërë projektin tonë një sukses, ne kemi nevojë për një qasje në internet për Raspberry Pi tonë. Në këtë, ju keni mundësi si lidhja e një kabllo Ethernet (LAN). Gjithashtu, si një mënyrë alternative, por mbresëlënëse për të përdorur një përshtatës WiFi.

Fuqizimi i qarkut

Futeni kabllon Micro USB në prizën e energjisë të Raspberry Pi. Ndizeni dhe voila, jemi mirë të shkojmë!

Lidhja me ekranin

Ne ose mund ta lidhim kabllon HDMI me një monitor ose mund të jemi pak novatorë për të bërë Pi -n tonë pa kokë (duke përdorur -SSH/PuTTY) që ndihmon në uljen e kostos shtesë sepse ne jemi disi hobiistë.

Kur një zakon fillon të kushtojë para, quhet një hobi

Hapi 3: Programimi i Raspberry Pi në Java

Programimi i Raspberry Pi në Java
Programimi i Raspberry Pi në Java

Kodi Java për Sensorin Raspberry Pi dhe MPL3115A2. Availableshtë në dispozicion në depon tonë Github.

Para se të kaloni në kod, sigurohuni që të lexoni udhëzimet e dhëna në skedarin Readme dhe konfiguroni Raspberry Pi tuaj sipas tij. Do të duhet vetëm një moment për ta bërë këtë. Lartësia llogaritet nga presioni duke përdorur ekuacionin më poshtë:

h = 44330.77 {1 - (p / p0) ^ 0.1902632} + OFF_H (Vlera e Regjistrit)

ku p0 = presioni i nivelit të detit (101326 Pa) dhe h është në metra. MPL3115A2 e përdor këtë vlerë pasi regjistri i kompensuar përcaktohet si 2 Paskalë për LSB. Kodi është qartë para jush dhe është në formën më të thjeshtë që mund të imagjinoni dhe nuk duhet të keni probleme.

Ju gjithashtu mund të kopjoni kodin Java të punës për këtë sensor nga këtu.

// Shpërndarë me një licencë me vullnet të lirë.// Përdoreni atë në çdo mënyrë që dëshironi, fitimprurëse ose falas, me kusht që të përshtatet në licencat e veprave të tij shoqëruese. // MPL3115A2 // Ky kod është krijuar për të punuar me Mini Modulin MPL3115A2_I2CS I2C i disponueshëm nga ControlEverything.com. //

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice; import com.pi4j.io.i2c. I2CFactory; import java.io. IOException;

klasa publike MPL3115A2

{public static void main (String args ) hedh Përjashtim {// Krijo autobus I2C I2CBus Bus = I2CFactory.getInstance (I2CBus. BUS_1); // Merrni pajisjen I2C, adresa MPL3115A2 I2C është 0x60 (96) I2CDevice device = Bus.getDevice (0x60); // Zgjidh regjistrin e kontrollit // Mënyra aktive, OSR = 128, pajisja e modës së lartësimit. Shkruaj (0x26, (bajt) 0xB9); // Zgjidh regjistrin e konfigurimit të të dhënave // Ngjarja e gatshme e të dhënave e aktivizuar për lartësinë, presionin, pajisjen e temperaturës. Shkruaj (0x13, (bajt) 0x07); // Zgjidh regjistrin e kontrollit // Mënyra aktive, OSR = 128, pajisja e modës së lartësimit. Shkruaj (0x26, (bajt) 0xB9); Thread.sleep (1000);

// Lexoni 6 bajt të dhëna nga adresa 0x00 (00)

// statusi, tHeight msb1, tHeight msb, tHeight lsb, temp msb, temp lsb byte të dhëna = bajt i ri [6]; pajisje. lexo (0x00, të dhëna, 0, 6);

// Shndërroni të dhënat në 20-bit

int tHeight = ((((të dhënat [1] & 0xFF) * 65536) + ((të dhënat [2] & 0xFF) * 256) + (të dhënat [3] & 0xF0)) / 16); int temp = ((të dhënat [4] * 256) + (të dhënat [5] & 0xF0)) / 16; lartësi e dyfishtë = tHeight / 16.0; dyshe cTemp = (temp / 16.0); dyshe fTemp = cTemp * 1.8 + 32;

// Zgjidhni regjistrin e kontrollit

// Mënyra aktive, OSR = 128, pajisja e modalitetit të barometrit. Shkruaj (0x26, (bajt) 0x39); Thread.sleep (1000); // Lexoni 4 bajt të dhëna nga adresa 0x00 (00) // statusi, pres msb1, pres msb, pajisja pres lsb. Lexoni (0x00, të dhëna, 0, 4);

// Shndërroni të dhënat në 20-bit

int pres = (((të dhënat [1] & 0xFF) * 65536) + ((të dhënat [2] & 0xFF) * 256) + (të dhënat [3] & 0xF0)) / 16; presion i dyfishtë = (pres / 4.0) / 1000.0; // Dalja e të dhënave në ekran System.out.printf ("Presioni: %.2f kPa %n", presion); System.out.printf ("Lartësia mbidetare: %.2f m %n", lartësi); System.out.printf ("Temperatura në Celsius: %.2f C %n", cTemp); System.out.printf ("Temperatura në Fahrenheit: %.2f F %n", fTemp); }}

Hapi 4: Prakticiteti i Kodit (Duke punuar)

Prakticiteti i Kodit (Duke punuar)
Prakticiteti i Kodit (Duke punuar)

Tani, shkarkoni (ose git pull) kodin dhe hapeni atë në Raspberry Pi. Drejtoni komandat për të përpiluar dhe ngarkuar kodin në terminal dhe shihni daljen në Monitor. Pas disa sekondash, do të shfaqë të gjithë parametrat. Pasi të siguroheni që gjithçka funksionon pa probleme, mund ta merrni këtë projekt në një projekt më të madh.

Hapi 5: Aplikimet dhe Karakteristikat

Përdorimi i zakonshëm i sensorit MPL3115A2 Precision Altimeter është në aplikacione si Map (Assist Map, Navigation), Compass Magnetic, Or GPS (GPS Dead Reckoning, GPS Enhancement for Emergency Services), Altimetria e Saktësisë së Lartë, Smartphone/Tableta, Elektronikë Personal Altimetria dhe Satelitët (Pajisjet/Parashikimet e Stacionit Moti).

Për p.sh. Duke përdorur këtë sensor dhe Rasp Pi, ju mund të ndërtoni një lartësimatës dixhital vizual, pjesa më e rëndësishme e pajisjeve për parashutizëm, që mund të masë lartësinë, presionin e ajrit dhe temperaturën. Ju mund të shtoni garzë të erës dhe sensorë të tjerë, kështu që bëni një më interesante.

Hapi 6: Përfundimi

Meqenëse programi është jashtëzakonisht i personalizueshëm, ka shumë mënyra interesante në të cilat mund ta zgjeroni këtë projekt dhe ta bëni atë edhe më të mirë. Për shembull, një lartësimatës/interferometër do të përfshijë disa lartësimatës të montuar në direkë të cilët do të merrnin matje njëkohësisht, duke siguruar kështu mbulim të vazhdueshëm, të vetëm ose shumë-lartësimatës të zonës së gjerë. Ne kemi një video mësimore interesante në YouTube që mund t'ju ndihmojë në kuptimin më të mirë të këtij projekti.

Recommended: