Raspberry Pi HTS221 relatieve vochtigheid en temperatuur Sensor het leerprogramma van Java (3 / 4 stap)

Stap 3: Code:


De python code voor HTS221 kan worden gedownload van onze github archief-ControlEverythingCommunity

Hier is de link voor hetzelfde:

https://github.com/ControlEverythingCommunity/HTS2...

Het gegevensblad van HTS221 kan hier worden gevonden:

http://www.St.com/Web/en/resource/Technical/docume...

We hebben pi4j bibliotheek voor java code gebruikt, de stappen te installeren pi4j op de raspberry pi is hier beschreven:

http://pi4j.com/install.html

U kunt ook de code kopiëren vanaf hier, het wordt als volgt gegeven:

Gedistribueerd met een licentie van de vrije wil.

Gebruik het elke manier wilt u, op de winst of het gratis, mits het past in de licenties van de bijbehorende werken.

HTS221

Deze code is ontworpen om te werken met de HTS221_I2CS I2C Mini Module beschikbaar vanaf ControlEverything.com.

https://www.controleverything.com/content/Humidit...

importeren van com.pi4j.io.i2c.I2CBus;

importeren van com.pi4j.io.i2c.I2CDevice;

importeren van com.pi4j.io.i2c.I2CFactory;

importeren van java.io.IOException;

openbare klasse HTS221 {openbare statische nietige leiding (Koord args[]) gooit uitzondering

{

I2CBus maken

I2CBus bus = I2CFactory.getInstance(I2CBus.BUS_1);

Krijg I2C apparaat, HTS221 I2C adres is 0x5F(95)

I2CDevice apparaat = bus.getDevice(0x5F);

Gemiddelde upconfiguratie selecteren register

Gemiddelde monsters van de temperatuur = 16, vochtigheid gemiddelde monsters = 32

Device.write (0x10, (byte) 0x1B);

Besturingselement SELECT register1

Inschakelen, blok gegevens bijwerken, gegevens tarief o/p = 1 Hz

Device.write (0x20, (byte) 0x85);

Thread.Sleep(500);

Kalibratie waarden lezen uit het niet-vluchtig geheugen van het apparaat

Vochtigheid kalibratie waarden

byte [] val = nieuwe byte [2];

Lezen van 1 byte van de gegevens van het adres 0x30(48)

Val [0] = (byte)device.read(0x30);

Lezen van 1 byte van de gegevens van het adres 0x31(49)

Val [1] = (byte)device.read(0x31);

int H0 = (val [0] & 0xFF) / 2;

int H1 = (val [1] & 0xFF) / 2;

Lezen van 1 byte van de gegevens van het adres 0x36(54)

Val [0] = (byte)device.read(0x36);

Lezen van 1 byte van de gegevens van het adres 0x37(55)

Val [1] = (byte)device.read(0x37);

int H2 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);

Lezen van 1 byte van de gegevens van het adres 0x3A(58)

Val [0] = (byte)device.read(0x3A);

Lezen van 1 byte van de gegevens van het adres 0x3B(59)

Val [1] = (byte)device.read(0x3B);

int H3 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);

Temperatuur kalibratie waarden

Lezen van 1 byte van de gegevens van het adres 0x32(50)

int T0 = ((byte)device.read(0x32) & 0xFF);

Lezen van 1 byte van de gegevens van het adres 0x33(51)

int T1 = ((byte)device.read(0x33) & 0xFF);

Lezen van 1 byte van de gegevens van het adres 0x35(53)

int rauwe = ((byte)device.read(0x35) & 0x0F);

De temperatuur kalibratie-waarden converteren naar 10-bits

T0 = ((raw & 0x03) * 256) + T0;

T1 = ((raw & 0x0C) * 64) + T1;

Lezen van 1 byte van de gegevens van het adres 0x3C(60)

Val [0] = (byte)device.read(0x3C);

Lezen van 1 byte van de gegevens van het adres 0x3D(61)

Val [1] = (byte)device.read(0x3D);

int T2 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);

Lezen van 1 byte van de gegevens van het adres 0x3E(62)

Val [0] = (byte)device.read(0x3E);

Lezen van 1 byte van de gegevens van het adres 0x3F(63)

Val [1] = (byte)device.read(0x3F);

int T3 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);

Lees 4 bytes aan gegevens

msb Hum, hum, lsb, msb temp temp lsb

[] bytegegevens = nieuwe byte [4]; Device.Read (0x28 | 0x80, gegevens, 0, 4);

De gegevens converteren

int hum = ((gegevens [1] & 0xFF) * 256) + (gegevens [0] & 0xFF);

int. temp = ((gegevens [3] & 0xFF) * 256) + (gegevens [2] & 0xFF);

if(temp > 32767)

{

Temp-= 65536;

}

dubbele vochtigheid = ((1.0 * H1)-(1.0 * H0)) * (1.0 * hum - 1.0 * H2) / (1,0 * H3 - 1.0 * H2) + (1.0 * H0);

dubbele cTemp = ((T1-T0) / 8.0) * (temp - T2) / (T3 - T2) + (T0 / 8.0);

dubbele fTemp = (cTemp * 1.8) + 32;

Uitvoergegevens naar scherm

System.out.printf ("relatieve vochtigheid: %.2f %% RH %n", vocht);

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

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

}

}

Gerelateerde Artikelen

Raspberry Pi - SI7006-A20 vochtigheid & Temperatuur Sensor het leerprogramma van Java

Raspberry Pi - SI7006-A20 vochtigheid & Temperatuur Sensor het leerprogramma van Java

SI7006-A20 is een vochtigheid en temperatuursensor die kan worden toegepast op I2C communicatieprotocol. Het heeft een monolithische CMOS IC integratie van vochtigheid en temperatuur sensor elementen, een analoog-digitaalomzetter enz. Opgenomen met z
Raspberry Pi - SI7021-Humidiy & Temperatuur Sensor het leerprogramma van Java

Raspberry Pi - SI7021-Humidiy & Temperatuur Sensor het leerprogramma van Java

SI7021 is een vochtigheid en temperatuursensor die kan worden toegepast op I2C communicatieprotocol. Het heeft een monolithische CMOS IC integratie van vochtigheid en temperatuur sensor elementen, een analoog-digitaalomzetter enz. Opgenomen met zeer
Raspberry Pi - HIH6130 I2C vochtigheid & Temperatuur Sensor het leerprogramma van Java

Raspberry Pi - HIH6130 I2C vochtigheid & Temperatuur Sensor het leerprogramma van Java

HIH6130 is een vochtigheid en temperatuursensor met digitale uitgang. Deze sensoren bieden een nauwkeurigheidsniveau van ±4% RH. Met toonaangevende langetermijnstabiliteit, waar temperatuur-gecompenseerd digitale I2C, toonaangevende betrouwbaarheid,
Raspberry Pi - SHT30 vochtigheid & Temperatuur Sensor het leerprogramma van Java

Raspberry Pi - SHT30 vochtigheid & Temperatuur Sensor het leerprogramma van Java

SHT30 digitale vochtigheids- en temperatuursensor biedt superieure prestaties en een ruimtebesparende voetafdruk. Het biedt gekalibreerde, gelineariseerde signalen in digitale, I2C-indeling. Fabricage van deze sensor is gebaseerd op CMOSens technolog
Raspberry Pi HDC1000 Temperatuur Sensor het leerprogramma van Java

Raspberry Pi HDC1000 Temperatuur Sensor het leerprogramma van Java

De HDC1000 is een digitale vochtigheid sensor met geïntegreerde temperatuursensor waarmee uitstekende meetnauwkeurigheid op zeer lage kracht. Het toestel meet luchtvochtigheid gebaseerd op een roman capacitieve sensor. De vochtigheid en temperatuur s
Raspberry Pi - TMP100 Temperatuur Sensor het leerprogramma van Java

Raspberry Pi - TMP100 Temperatuur Sensor het leerprogramma van Java

TMP100 hoog-nauwkeurigheid, Low-Power, digitale temperatuur Sensor I2C MINI module. De TMP100 is ideaal voor uitgebreide temperatuurmeting. Dit apparaat biedt een nauwkeurigheid van ± 1 ° C zonder kalibratie of externe component signaal conditioning.
Raspberry Pi STS21 Temperatuur Sensor het leerprogramma van Java

Raspberry Pi STS21 Temperatuur Sensor het leerprogramma van Java

STS21 digitale temperatuursensor biedt superieure prestaties en een ruimtebesparende voetafdruk. Het biedt gekalibreerde, gelineariseerde signalen in digitale, I2C-indeling. Fabricage van deze sensor is gebaseerd op CMOSens technologie, die aan de su
Raspberry Pi MCP9803 Temperatuur Sensor het leerprogramma van Java

Raspberry Pi MCP9803 Temperatuur Sensor het leerprogramma van Java

MCP9803 is een hoge nauwkeurigheid van de 2-draads temperatuursensor. Ze zijn vastgelegd met de gebruiker - programmeerbare registers, die de temperatuur sensing toepassingen vergemakkelijken. Deze sensor is geschikt voor zeer geavanceerde multi-zone
Raspberry Pi TMP112 Temperatuur Sensor het leerprogramma van Java

Raspberry Pi TMP112 Temperatuur Sensor het leerprogramma van Java

TMP112 hoog-nauwkeurigheid, Low-Power, digitale temperatuur Sensor I2C MINI module. De TMP112 is ideaal voor uitgebreide temperatuurmeting. Dit apparaat biedt een nauwkeurigheid van ±0, 5 ° C zonder kalibratie of externe component signaal conditionin
Raspberry Pi MCP9805 Temperatuur Sensor het leerprogramma van Java

Raspberry Pi MCP9805 Temperatuur Sensor het leerprogramma van Java

MCP9805 is een geheugen module digitale temperatuursensor. Het is opgenomen met gebruiker programmeerbare registers die flexibiliteit leveren voor temperatuur sensing toepassingen. Deze sensor is ontworpen om te worden opgenomen in het mobiele platfo
Raspberry Pi - TCN75A Temperatuur Sensor het leerprogramma van Java

Raspberry Pi - TCN75A Temperatuur Sensor het leerprogramma van Java

TCN75A is een twee-draads seriële temperatuursensor opgenomen met temperatuur / digitaal-converter. Het is opgenomen met gebruiker programmeerbare registers die flexibiliteit voor temperatuur-sensing toepassingen leveren. De register-instellingen kun
Raspberry Pi A1332 Precision Hall - Effect hoek Sensor het leerprogramma van Java

Raspberry Pi A1332 Precision Hall - Effect hoek Sensor het leerprogramma van Java

A1332 is een 360° contactloze hoge resolutie programmeerbare magnetische hoek positie sensor. Het is ontworpen voor digitale systemen via een I2C-interface. Het is gebouwd op circulaire verticale Hall (CVH) technologie en een programmeerbare micropro
Arduino Nano - HTS221 relatieve vochtigheid en temperatuur Sensor Tutorial

Arduino Nano - HTS221 relatieve vochtigheid en temperatuur Sensor Tutorial

HTS221 is een ultra compacte capacitieve digitale sensor voor relatieve vochtigheid en temperatuur. Het omvat een sensing-element en een gemengde signaal toepassing specifieke geïntegreerde circuit(ASIC) de meting informatie via digitale seriële inte
Raspberry Pi - TMP007 infrarood thermozuil Sensor het leerprogramma van Java

Raspberry Pi - TMP007 infrarood thermozuil Sensor het leerprogramma van Java

TMP007 is een infrarood thermozuil sensor die de temperatuur van een object meet zonder het zijn in contact met het. De uitgezonden door het object op de sensor vlak Infrarood energie wordt geabsorbeerd door de thermozuil geïntegreerd in de sensor. D