Talaan ng mga Nilalaman:

Pagsukat ng Humidity Gamit ang HYT939 at Raspberry Pi: 4 na Hakbang
Pagsukat ng Humidity Gamit ang HYT939 at Raspberry Pi: 4 na Hakbang

Video: Pagsukat ng Humidity Gamit ang HYT939 at Raspberry Pi: 4 na Hakbang

Video: Pagsukat ng Humidity Gamit ang HYT939 at Raspberry Pi: 4 na Hakbang
Video: How to use W1209 Temperature relay controller and program the thermostat 2024, Hulyo
Anonim
Image
Image

Ang HYT939 ay isang digital kahalumigmigan sensor na gumagana sa I2C komunikasyon protocol. Ang kahalumigmigan ay isang pangunahing parameter pagdating sa mga medikal na system at laboratoryo, Kaya upang makamit ang mga layuning ito sinubukan naming i-interface ang HYT939 sa raspberry pi. Sa tutorial na ito ang interfacing ng HYT939 sensor module na may raspberry pi ay ipinakita at ang programa nito gamit ang wika ng Java ay nakalarawan din.

Upang mabasa ang mga halagang halumigmig, gumamit kami ng raspberry pi na may isang I2c adapter. Ginagawa ng I2C adapter na ito ang koneksyon sa module ng sensor na mas madali at mas maaasahan.

Hakbang 1: Kinakailangan ang Hardware:

Kinakailangan ang Hardware
Kinakailangan ang Hardware
Kinakailangan ang Hardware
Kinakailangan ang Hardware
Kinakailangan ang Hardware
Kinakailangan ang Hardware

Ang hardware na kinakailangan upang magawa ang gawain ay ang mga sumusunod:

1. HYT939

2. Raspberry Pi

3. I2C Cable

4. I2C Shield Para sa Raspberry Pi

5. Ethernet Cable

-

Hakbang 2: Hardware Hookup:

Hardware Hookup
Hardware Hookup
Hardware Hookup
Hardware Hookup

Karaniwang ipinapaliwanag ng seksyon ng hookup ng hardware ang mga koneksyon sa mga kable na kinakailangan sa pagitan ng sensor at ng raspberry pi. Ang pagtiyak sa tamang mga koneksyon ay ang pangunahing pangangailangan habang nagtatrabaho sa anumang system para sa nais na output. Kaya, ang mga kinakailangang koneksyon ay ang mga sumusunod:

Gagana ang HYT939 sa paglipas ng I2C. Narito ang halimbawa ng diagram ng mga kable, na nagpapakita kung paano i-wire ang bawat interface ng sensor.

Sa labas ng kahon, naka-configure ang board para sa isang interface ng I2C, dahil inirerekumenda namin ang paggamit ng hookup na ito kung hindi ka agnostiko. Ang kailangan mo lang ay apat na wires!

Apat na koneksyon lamang ang kinakailangan ng Vcc, Gnd, SCL at SDA pin at ang mga ito ay konektado sa tulong ng I2C cable.

Ang mga koneksyon na ito ay ipinakita sa mga larawan sa itaas.

Hakbang 3: Java Code para sa Pagsukat ng Humidity:

Java Code para sa Pagsukat ng Humidity
Java Code para sa Pagsukat ng Humidity
Java Code para sa Pagsukat ng Humidity
Java Code para sa Pagsukat ng Humidity

Ang bentahe ng paggamit ng raspberry pi ay, nagbibigay sa iyo ng kakayahang umangkop ng wika ng programa kung saan nais mong i-program ang board upang ma-interface ang sensor kasama nito. Ginagamit ang kalamangan na ito ng board na ito, ipinapakita namin dito ang programa nito sa Java. Ang java code para sa HYT939 ay maaaring ma-download mula sa aming komunidad na github na Dcube Store.

Pati na rin para sa kadalian ng mga gumagamit, ipinapaliwanag din namin ang code dito:

Bilang unang hakbang ng pag-coding kailangan mong i-download ang pi4j library sa kaso ng java, dahil sinusuportahan ng library na ito ang mga pagpapaandar na ginamit sa code. Kaya, upang mai-download ang library maaari mong bisitahin ang sumusunod na link:

pi4j.com/install.html

Maaari mong kopyahin ang gumaganang java code para sa sensor na ito mula dito din:

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice;

import com.pi4j.io.i2c. I2CFactory;

i-import ang java.io. IOException;

pampublikong klase HYT939

{

public static void main (String args ) nagtatapon ng Exception

{

// Lumikha ng I2CBus

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

// Kumuha ng I2C device, ang address ng HYT939 I2C ay 0x28 (40)

I2CDevice aparato = bus.getDevice (0x28);

// Magpadala ng normal na utos ng mode

aparato. magsulat ((byte) 0x80);

Thread.tulog (500);

// Basahin ang 4 bytes ng data

// halumigmig msb, halumigmig lsb, temp msb, temp lsb

byte data = bagong byte [4];

aparato.read (data, 0, 4);

// I-convert ang data sa 14-bit

dobleng kahalumigmigan = (((data [0] & 0x3F) * 256) + (data [1] & 0xFF)) * (100.0 / 16383.0);

doble cTemp = ((((data [2] & 0xFF) * 256) + (data [3] & 0xFC)) / 4) * (165.0 / 16383.0) - 40;

doble fTemp = (cTemp * 1.8) + 32;

// Output data sa screen

System.out.printf ("Kamag-anak na Humidity ay:%.2f %% RH% n", halumigmig);

System.out.printf ("Temperatura sa Celsius ay:%.2f C% n", cTemp);

System.out.printf ("Temperatura sa Fahrenheit ay:%.2f F% n", fTemp);

}

}

Ang silid-aklatan na nagpapadali sa komunikasyon ng i2c sa pagitan ng sensor at board ay pi4j, ang iba't ibang mga package na I2CBus, I2CDevice at I2CFactory ay makakatulong upang maitaguyod ang koneksyon.

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

isulat ang () at basahin () ang mga pagpapaandar na ginagamit upang magsulat ng ilang mga partikular na utos sa sensor upang gumana ito sa isang partikular na mode at basahin ang output ng sensor ayon sa pagkakabanggit. Ang sumusunod na bahagi ng code ay naglalarawan ng paggamit ng mga pagpapaandar na ito.

// Magpadala ng normal na aparato ng aparato sa utos. Magsulat ((byte) 0x80); Thread.tulog (500); // Basahin ang 4 bytes ng data // halumigmig msb, halumigmig lsb, temp msb, temp lsb byte data = bagong byte [4]; aparato.read (data, 0, 4);

Ang output ng sensor ay ipinapakita din sa larawan sa itaas.

Hakbang 4: Mga Aplikasyon:

Mga Aplikasyon
Mga Aplikasyon

Ang HYT939 na isang mahusay na digital halumigmig sensor ay nagtatrabaho sa mga Medical system, Autoclaves. Ang pagsukat ng point point ng hamog at mga sistema ng pagpapatayo ay nahanap din ang paggamit ng module ng sensor na ito. Sa iba't ibang Laboratories kung saan ang naaangkop na antas ng kahalumigmigan ay isang pangunahing parameter para sa pagsasagawa ng mga eksperimento, ang sensor na ito ay maaaring i-deploy doon para sa mga pagsukat ng halumigmig.

Inirerekumendang: