Turinys:

Temperatūros matavimas naudojant TMP112 ir Raspberry Pi: 4 žingsniai
Temperatūros matavimas naudojant TMP112 ir Raspberry Pi: 4 žingsniai

Video: Temperatūros matavimas naudojant TMP112 ir Raspberry Pi: 4 žingsniai

Video: Temperatūros matavimas naudojant TMP112 ir Raspberry Pi: 4 žingsniai
Video: Использование Melexis MLX90614 Инфракрасный термометр с Arduino 2024, Liepa
Anonim
Image
Image

TMP112 didelio tikslumo, mažos galios, skaitmeninis temperatūros jutiklis I2C MINI modulis. TMP112 idealiai tinka ilgesniam temperatūros matavimui. Šis prietaisas siūlo ± 0,5 ° C tikslumą, nereikalaujant kalibravimo ar išorinio komponento signalo kondicionavimo.

Šioje pamokoje parodyta TMP112 jutiklio modulio sąsaja su aviečių pi ir taip pat iliustruotas jo programavimas naudojant „Java“kalbą. Norėdami nuskaityti temperatūros reikšmes, mes naudojome aviečių pi su I2c adapteriu. Šis I2C adapteris leidžia lengvai ir patikimiau prijungti prie jutiklio modulio.

1 veiksmas: reikalinga aparatūra:

Reikalinga aparatūra
Reikalinga aparatūra
Reikalinga aparatūra
Reikalinga aparatūra
Reikalinga aparatūra
Reikalinga aparatūra

Medžiagos, reikalingos mūsų tikslui pasiekti, apima šiuos aparatūros komponentus:

1. TMP112

2. Raspberry Pi

3. I2C kabelis

4. I2C skydas avietėms pi

2 veiksmas: prijungimas prie aparatūros:

Aparatūros prijungimas
Aparatūros prijungimas
Aparatūros prijungimas
Aparatūros prijungimas

Techninės įrangos prijungimo skyriuje iš esmės paaiškinamos reikalingos laidų jungtys tarp jutiklio ir aviečių pi. Užtikrinti teisingas jungtis yra pagrindinė būtinybė dirbant su bet kuria norimos išvesties sistema. Taigi, būtinos jungtys yra šios:

TMP112 veiks per I2C. Čia yra elektros instaliacijos schemos pavyzdys, parodantis, kaip prijungti kiekvieną jutiklio sąsają.

Iš karto plokštė sukonfigūruota I2C sąsajai, todėl rekomenduojame naudoti šį prijungimą, jei esate kitaip agnostikas. Viskas, ko jums reikia, yra keturi laidai!

Reikia tik keturių jungčių „Vcc“, „Gnd“, „SCL“ir „SDA“kaiščių, kurie yra prijungti naudojant I2C kabelį.

Šie ryšiai parodyti aukščiau esančiose nuotraukose.

3 žingsnis: „Java“temperatūros matavimo kodas:

„Java“temperatūros matavimo kodas
„Java“temperatūros matavimo kodas

„Raspberry pi“naudojimo pranašumas yra tas, kad programavimo kalba, kuria norite programuoti plokštę, yra lanksti, kad būtų galima su ja susieti jutiklį. Pasinaudodami šiuo šios plokštės pranašumu, mes parodome, kad tai programavimas „Java“. „TMP112“„Java“kodą galima atsisiųsti iš mūsų „GitHub“bendruomenės, kuri yra „Dcube Store“.

Be vartotojų patogumo, mes taip pat paaiškiname kodą čia:

Kaip pirmąjį kodavimo žingsnį, „Java“atveju turite atsisiųsti „pi4j“biblioteką, nes ši biblioteka palaiko kode naudojamas funkcijas. Taigi, norėdami atsisiųsti biblioteką, galite apsilankyti šioje nuorodoje:

pi4j.com/install.html

Taip pat galite nukopijuoti šio jutiklio darbinį „Java“kodą:

importuoti com.pi4j.io.i2c. I2CBus;

importuoti com.pi4j.io.i2c. I2CDevice;

importuoti com.pi4j.io.i2c. I2CFactory;

importuoti java.io. IOException;

viešoji klasė TMP112

{

public static void main (String args ) metimai Išimtis

{

// Sukurti I2C magistralę

I2CBus magistralė = I2CFactory.getInstance (I2CBus. BUS_1);

// Gauti I2C įrenginį, TMP112 I2C adresas yra 0x48 (72)

I2CDĮrenginio įrenginys = autobusas.getDevice (0x48);

baitas konfigūracija = naujas baitas [2];

// Nuolatinės konversijos režimas, 12 bitų skiriamoji geba, gedimų eilė yra 1

konfigūracija [0] = (baitas) 0x60;

// Žemas poliškumas, termostatas lygintuvo režimu, išjungia išjungimo režimą

konfigūracija [1] = (baitas) 0xA0;

// Įrašykite konfigūraciją registruoti 0x01 (1)

device.write (0x01, config, 0, 2);

Siūlai.miegoti (500);

// Perskaitykite 2 baitus duomenų iš adreso 0x00 (0), pirmiausia msb

baitas duomenys = naujas baitas [2];

device.read (0x00, duomenys, 0, 2);

// Konvertuoti duomenis

int temp = (((duomenys [0] ir 0xFF) * 256) + (duomenys [1] ir 0xFF))/16;

jei (temperatūra> 2047)

{

temperatūra -= 4096;

}

dvigubas cTemp = temp * 0,0625;

dvigubas fTemp = cTemp * 1,8 + 32;

// Išvestis į ekraną

System.out.printf ("Temperatūra Celsijaus laipsniais yra: %.2f C %n", cTemp);

System.out.printf ("Temperatūra Farenheitu yra: %.2f F %n", fTemp);

}

}

Biblioteka, palengvinanti i2c ryšį tarp jutiklio ir plokštės, yra pi4j, įvairūs jos paketai I2CBus, I2CDevice ir I2CFactory padeda užmegzti ryšį.

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

rašymo () ir skaitymo () funkcijos naudojamos tam tikroms komandoms į jutiklį rašyti, kad jis veiktų tam tikru režimu ir atitinkamai nuskaitytų jutiklio išvestį.

Jutiklio išvestis taip pat parodyta aukščiau esančiame paveikslėlyje.

4 žingsnis: programos:

Programos
Programos

Įvairios programos, kuriose naudojamas mažos galios TMP112, didelio tikslumo skaitmeninis temperatūros jutiklis, yra maitinimo šaltinio temperatūros stebėjimas, kompiuterių periferinė šiluminė apsauga, baterijų valdymas ir biuro mašinos.

Rekomenduojamas: