Orodha ya maudhui:

Raspberry Pi - MPL3115A2 Precision Altimeter Sensor Java Mafunzo: Hatua 4
Raspberry Pi - MPL3115A2 Precision Altimeter Sensor Java Mafunzo: Hatua 4

Video: Raspberry Pi - MPL3115A2 Precision Altimeter Sensor Java Mafunzo: Hatua 4

Video: Raspberry Pi - MPL3115A2 Precision Altimeter Sensor Java Mafunzo: Hatua 4
Video: Raspberry Pi MPL3115A2 Precision Altimeter Sensor Java Tutorial 2024, Septemba
Anonim
Image
Image

MPL3115A2 inaajiri sensa ya shinikizo la MEMS na kiolesura cha I2C ili kutoa data sahihi ya Shinikizo / Urefu na Joto. Matokeo ya sensa ni digitized na azimio kubwa 24-bit ADC. Usindikaji wa ndani huondoa kazi za fidia kutoka kwa mfumo wa mwenyeji wa MCU. Inauwezo wa kugundua mabadiliko katika 0.05 kPa tu ambayo ni sawa na mabadiliko ya 0.3m kwa urefu. Hapa kuna onyesho lake na rasipberry pi kutumia nambari ya java.

Hatua ya 1: Unachohitaji.. !

Unachohitaji..!!
Unachohitaji..!!

1. Raspberry Pi

2. MPL3115A2

3. I²C Cable

4. I²C Shield kwa Raspberry Pi

5. Cable ya Ethernet

Hatua ya 2: Miunganisho:

Miunganisho
Miunganisho
Miunganisho
Miunganisho
Miunganisho
Miunganisho
Miunganisho
Miunganisho

Chukua ngao ya I2C kwa pi ya raspberry na usukume kwa upole juu ya pini za gpio za pi ya raspberry.

Kisha unganisha mwisho mmoja wa kebo ya I2C kwa sensorer ya MPL3115A2 na mwisho mwingine kwenye ngao ya I2C.

Pia unganisha kebo ya Ethernet kwa pi au unaweza kutumia moduli ya WiFi.

Uunganisho umeonyeshwa kwenye picha hapo juu.

Hatua ya 3: Nambari:

Nambari
Nambari

Nambari ya java ya MPL3115A2 inaweza kupakuliwa kutoka kwa duka yetu ya github- Duka la DCUBE.

Hapa kuna kiunga cha hiyo hiyo:

github.com/DcubeTechVentures/MPL3115A2/tree/master/Java

Tumetumia maktaba ya pi4j kwa nambari ya java, hatua za kusanikisha pi4j kwenye rasiberi pi imeelezewa hapa:

pi4j.com/install.html

Unaweza pia kunakili nambari kutoka hapa, imepewa kama ifuatavyo:

// Imesambazwa na leseni ya hiari.

// Itumie kwa njia yoyote unayotaka, faida au bure, mradi inafaa katika leseni za kazi zake zinazohusiana.

// MPL3115A2

// Nambari hii imeundwa kufanya kazi na Moduli ya MPL3115A2_I2CS I2C Mini inayopatikana kutoka

kuagiza com.pi4j.io.i2c. I2CBus;

kuagiza com.pi4j.io.i2c. I2CDevice;

kuagiza com.pi4j.io.i2c. I2CFactory;

kuagiza java.io. IOException;

darasa la umma MPL3115A2

{

umma tuli batili kuu (Kamba args ) hutupa Ubaguzi

{

// Unda basi ya I2C

Basi la I2C = I2CFactory.getInstance (I2CBus. BUS_1);

// Pata kifaa cha I2C, MPL3115A2 Anwani ya I2C ni 0x60 (96)

Kifaa cha I2CDevice = Bus.getDevice (0x60);

// Chagua rejista ya kudhibiti

// Hali inayotumika, OSR = 128, hali ya altimeter

andika kifaa (0x26, (byte) 0xB9);

// Chagua rejista ya usanidi wa data

// Tukio tayari la data limewezeshwa kwa urefu, shinikizo, joto

andika kifaa (0x13, (byte) 0x07);

// Chagua rejista ya kudhibiti

// Hali inayotumika, OSR = 128, hali ya altimeter

andika kifaa (0x26, (byte) 0xB9);

Kulala Thread (1000);

// Soma ka 6 za data kutoka kwa anwani 0x00 (00)

// hadhi, tHeight msb1, tHeight msb, tHeight lsb, temp msb, temp lsb

data data = byte mpya [6];

soma kifaa (0x00, data, 0, 6);

// Badilisha data iwe 20-bits

int tHeight = (((((data [1] & 0xFF) * 65536) + ((data [2] & 0xFF) * 256) + (data [3] & 0xF0)) / 16);

int temp = ((data [4] * 256) + (data [5] & 0xF0)) / 16;

urefu mbili = tUrefu / 16.0;

cTemp mara mbili = (temp / 16.0);

fTemp mara mbili = cTemp * 1.8 + 32;

// Chagua rejista ya kudhibiti

// Hali inayotumika, OSR = 128, hali ya barometer

andika kifaa (0x26, (byte) 0x39);

Kulala Thread (1000);

// Soma ka 4 za data kutoka kwa anwani 0x00 (00)

// hadhi, pres msb1, pres msb, pres lsb

soma kifaa (0x00, data, 0, 4);

// Badilisha data iwe 20-bits

int pres = ((((data [1] & 0xFF) * 65536) + ((data [2] & 0xFF) * 256) + (data [3] & 0xF0)) / 16;

shinikizo mara mbili = (pres / 4.0) / 1000.0;

// Pato data kwa screen

System.out.printf ("Shinikizo:%.2f kPa% n", shinikizo);

System.out.printf ("Urefu:%.2f m% n", urefu);

System.out.printf ("Joto katika Celsius:%.2f C% n", cTemp);

System.out.printf ("Joto katika Fahrenheit:%.2f F% n", fTemp);

}

}

Hatua ya 4: Maombi:

Matumizi anuwai ya MPL3115A2 ni pamoja na Altimetry ya Usahihi wa Juu, Simu za Mkononi / Kompyuta Kibao, Upimaji wa Elektroniki za kibinafsi n.k. Inaweza pia kuingizwa katika Uhesabuji wa Wafu wa GPS, Uboreshaji wa GPS kwa Huduma za Dharura, Msaada wa Ramani, Urambazaji pamoja na Vifaa vya Kituo cha Hali ya Hewa.

Ilipendekeza: