Ljus intensitet mätning med hjälp av BH1715 och Raspberry Pi (4 / 5 steg)

Steg 4: Ljus intensitet mätning med hjälp av java-kod:



Fördelen med att använda raspberry pi är som ger dig flexibiliteten i det programmera språket som du vill programmera styrelsen för att gränssnittet sensorn med det. Utnyttja denna fördel av denna styrelse, visar vi här sin programmering i Java. Java-kod för BH1715 kan hämtas från vår github gemenskap som är Kontroll allt gemenskap.

Samt för att underlätta för användarna, förklarar vi koden här också:

Som ett första steg av kodning måste du ladda ner pi4j biblioteket vid java, eftersom detta bibliotek stöder funktioner används i koden. Så, om du vill ladda ner biblioteket kan du besöka följande länk:

http://pi4j.com/install.html

Du kan också kopiera arbetar Javakod för denna sensor härifrån:

Distribueras med en fri vilja licens.
Använda det något sätt du vill, vinst eller gratis, förutsatt att den passar i licenser av dess tillhörande arbeten.
BH1715
Denna kod är utformad att fungera med BH1715_I2CS I2C Mini modulen tillgänglig från ControlEverything.com.
https://www.controleverything.com/content/Light?s...
import com.pi4j.io.i2c.I2CBus;
import com.pi4j.io.i2c.I2CDevice;
import com.pi4j.io.i2c.I2CFactory;
import java.io.IOException;
allmän klass BH1715
{
public static void main (String args[]) kastar undantag
{
Skapa I2C bussen
I2CBus buss = I2CFactory.getInstance(I2CBus.BUS_1);
Får I2C enheten, BH1715 I2C adress är 0x23(35)
I2CDevice device = bus.getDevice(0x23);
Skicka ström på kommando
Device.write((byte)0x01);
Skicka kommando för kontinuerlig mätning
Device.write((byte)0x10);
Thread.Sleep(500);
Läs 2 byte data
luminans msb, luminans lsb
byte [] data = nya byte [2].
Device.Read (data, 0, 2);
Konvertera data
dubbel luminans = ((data [0] & 0xFF) * 256 + (data [1] & 0xFF)) / 1.20;
Utdata till skärm
System.out.printf ("Ambient Light luminans: %.2f lux %n", luminans);
}
}

Biblioteket som underlättar i2c kommunikation mellan sensorn och styrelsen är pi4j, dess olika paket I2CBus, I2CDevice och I2CFactory hjälp för att upprätta anslutningen.

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

Denna del av koden gör sensorn fungera för ljusintensitet mätning genom att skriva kommandona respektive med funktionen anropa och sedan data läses med funktionen read().

Device.write((byte)0x01); ström på kommando
Device.write((byte)0x10); kontinuerlig mätning kommando
byte [] data = nya byte [2]. Läs 2 byte data
Device.Read (data, 0, 2);

Uppgifterna från sensorn konverteras till lämpligt format med hjälp av följande:

dubbel luminans = ((data [0] & 0xFF) * 256 + (data [1] & 0xFF)) / 1.20;

Utdata är tryckt med funktionen System.out.println() i följande format.

System.out.printf ("Ambient Light luminans: %.2f lux %n", luminans);

Produktionen av sensorn visas i bilden ovan.

Se Steg
Relaterade Ämnen

Ljus intensitet uträkning med hjälp av BH1715 och partikel Photon

Igår arbetade vi på LCD-skärmen visar, och samtidigt arbetar över dem vi insåg vikten av ljusintensiteten uträkning. Ljusintensiteten är inte bara viktigt i fysisk domän i denna värld men det har dess bra sagt roll i biologiska domän också. Korrekt u...

Ljus intensitet uträkning med hjälp av BH1715 och Arduino Nano

Igår arbetade vi på LCD-skärmen visar, och samtidigt arbetar över dem vi insåg vikten av ljusintensiteten uträkning. Ljusintensiteten är inte bara viktigt i fysisk domän i denna värld men det har dess bra sagt roll i biologiska domän också. Korrekt u...

Magnetfält mätning med hjälp av HMC5883 och Raspberry Pi

HMC5883 är en digital kompass avsedd för låg-field magnetisk avkänning. Enheten har en bred magnetfält rad +/-8 Oe och en output ränta på 160 Hz. HMC5883 sensorn ingår automatisk avmagnetiseringsfunktionen rem drivrutiner, offset avbokning och en 12-...

Luftfuktighet mätning med hjälp av HYT939 och Raspberry Pi

HYT939 är en digital Fuktsensor som fungerar på I2C kommunikationsprotokoll. Luftfuktigheten är en avgörande parameter när det gäller medicinska system och laboratorier, så för att uppnå dessa mål som vi försökte gränssnitt HYT939 med raspberry pi. I...

Acceleration mätning med hjälp av BMA250 och Raspberry Pi

BMA250 är en liten, tunn, ultralow makt, 3-axlig accelerometer med hög upplösning (13-bitars) mätning vid upp till ±16 g. Digital utgång data är formaterade som 16-bitars tvåor kompletterar och kan nås via I2C digitala gränssnitt. Itmeasures den stat...

Temperaturmätning med hjälp av STS21 och Raspberry Pi

STS21 Digital temperaturgivare erbjuder överlägsen prestanda och en utrymmesbesparande fotavtryck. Det ger kalibrerad, linearized signalerar i digitalt, I2C format. Tillverkning av denna sensor är baserad på CMOSens teknik, som tillskrivar till den ö...

Tryck mätning med hjälp av CPS120 och Raspberry Pi

CPS120 är en hög kvalitet och låg kostnad kapacitiv Absolut trycksensor med full ersättning utdata. Det förbrukar mycket mindre energi och består av en ultra liten mikro-elektro-mekanisk Sensor(MEMS) för mätning. En sigma-delta baserat ADC är också i...

Temperaturmätning med hjälp av STS21 och partikel Photon

STS21 Digital temperaturgivare erbjuder överlägsen prestanda och en utrymmesbesparande fotavtryck. Det ger kalibrerad, linearized signalerar i digitalt, I2C format. Tillverkning av denna sensor är baserad på CMOSens teknik, som tillskrivar till den ö...

Temperaturmätning med hjälp av STS21 och Arduino Nano

STS21 Digital temperaturgivare erbjuder överlägsen prestanda och en utrymmesbesparande fotavtryck. Det ger kalibrerad, linearized signalerar i digitalt, I2C format. Tillverkning av denna sensor är baserad på CMOSens teknik, som tillskrivar till den ö...

Temperaturövervakning med hjälp av MCP9808 och Raspberry Pi

MCP9808 är en mycket noggrann digital temperatur sensor ±0, 5 ° C I2C mini modul. De förkroppsligas med user - programmerbar register som underlättar temperaturkännande program. MCP9808 hög noggrannhet temperaturgivare har blivit en industristandard...

Göra en brandvarnare i minuter med Samsung SAMIIO, Arduino UNO och Raspberry Pi

Låt oss bygga en IoT enhet som skickar flamma sensordata att SAMI med SAMERNAS WebSockets. IoT enheten består av en off-the-shelf sensor, Arduino UNO och Raspberry Pi.I detta genomförande används en enkel uppenbart för att snabbt skapa en ny enhetsty...

Magnetfält mätning med hjälp av HMC5883 och Arduino Nano

HMC5883är en digital kompass avsedd för låg-field magnetisk avkänning. Enheten har en bred magnetfält rad +/-8 Oe och en output ränta på 160 Hz. HMC5883 sensorn ingår automatisk avmagnetiseringsfunktionen rem drivrutiner, offset avbokning och en 12-b...

Magnetfält mätning med hjälp av HMC5883 och partikel Photon

HMC5883 är en digital kompass avsedd för låg-field magnetisk avkänning. Enheten har en bred magnetfält rad +/-8 Oe och en output ränta på 160 Hz. HMC5883 sensorn ingår automatisk avmagnetiseringsfunktionen rem drivrutiner, offset avbokning och en 12-...

Luftfuktighet mätning med hjälp av HYT939 och Arduino Nano

HYT939 är en digital Fuktsensor som fungerar på I2C kommunikationsprotokoll. Luftfuktigheten är en avgörande parameter när det gäller medicinska system och laboratorier, så för att uppnå dessa mål som vi försökte gränssnitt HYT939 med arduino nano. I...

Acceleration mätning med hjälp av BMA250 och Arduino Nano

BMA250 är en liten, tunn, ultralow makt, 3-axlig accelerometer med hög upplösning (13-bitars) mätning vid upp till ±16 g. Digital utgång data är formaterade som 16-bitars tvåor kompletterar och kan nås via I2C digitala gränssnitt. Itmeasures den stat...

Acceleration mätning med hjälp av BMA250 och partikel Photon

BMA250 är en liten, tunn, ultralow makt, 3-axlig accelerometer med hög upplösning (13-bitars) mätning vid upp till ±16 g. Digital utgång data är formaterade som 16-bitars tvåor kompletterar och kan nås via I2C digitala gränssnitt. Itmeasures den stat...

Luftfuktighet mätning med hjälp av HYT939 och partikel Photon

HYT939 är en digital Fuktsensor som fungerar på I2C kommunikationsprotokoll. Luftfuktigheten är en avgörande parameter när det gäller medicinska system och laboratorier, så för att uppnå dessa mål som vi försökte gränssnitt HYT939 med raspberry pi. I...

Tryck mätning med hjälp av CPS120 och partikel Photon

CPS120 är en hög kvalitet och låg kostnad kapacitiv Absolut trycksensor med full ersättning utdata. Det förbrukar mycket mindre energi och består av en ultra liten mikro-elektro-mekanisk Sensor(MEMS) för mätning. En sigma-delta baserat ADC är också i...

Tryck mätning med hjälp av CPS120 och Arduino Nano

CPS120 är en hög kvalitet och låg kostnad kapacitiv Absolut trycksensor med full ersättning utdata. Det förbrukar mycket mindre energi och består av en ultra liten mikro-elektro-mekanisk Sensor(MEMS) för mätning. En sigma-delta baserat ADC är också i...