Turinys:

Dalelių fotonas - STS21 temperatūros jutiklio pamoka: 4 žingsniai
Dalelių fotonas - STS21 temperatūros jutiklio pamoka: 4 žingsniai
Anonim
Image
Image

STS21 skaitmeninis temperatūros jutiklis pasižymi puikiu našumu ir taupo vietą. Jis teikia kalibruotus, linijinius signalus skaitmeniniu I2C formatu. Šio jutiklio gamyba grindžiama CMOSens technologija, kuri priskiriama puikiam STS21 veikimui ir patikimumui. STS21 skiriamąją gebą galima pakeisti komandomis, galima nustatyti išsikrovusią bateriją, o kontrolinė suma padeda pagerinti ryšio patikimumą. Čia parodomas jo sąsajos su dalelių fotonu demonstravimas.

1 žingsnis: ko jums reikia..

Ko tau reikia..!!
Ko tau reikia..!!

1. Dalelių fotonas

2. STS21

3. I²C kabelis

4. I²C skydas dalelių fotonui

2 veiksmas: prijungimas:

Ryšys
Ryšys
Ryšys
Ryšys
Ryšys
Ryšys
Ryšys
Ryšys

Paimkite dalelių fotono I2C skydą ir švelniai stumkite jį ant dalelių fotono kaiščių.

Tada vieną I2C kabelio galą prijunkite prie STS21 jutiklio, o kitą - prie I2C skydo.

Sujungimai parodyti aukščiau esančiame paveikslėlyje.

3 žingsnis: kodas:

Kodas
Kodas

STS21 dalelių kodą galima atsisiųsti iš mūsų „GitHub“saugyklos- „Dcube Store“.

Čia yra nuoroda į tą patį:

github.com/DcubeTechVentures/STS21

Dalelių kodui panaudojome dvi bibliotekas - application.h ir spark_wiring_i2c.h. Norint palengvinti I2C ryšį su jutikliu, reikalinga „Spark_wiring_i2c“biblioteka.

Taip pat galite nukopijuoti kodą iš čia, jis pateikiamas taip:

// Platinama su laisvos valios licencija.

// Naudokite bet kokiu būdu, pelningai ar nemokamai, jei jis atitinka susijusių darbų licencijas.

// STS21

// Šis kodas skirtas dirbti su „STC21_I2CS I2C Mini“moduliu, kurį galima įsigyti „Dcube Store“.

#įtraukti

#įtraukti

// STS21 I2C adresas yra 0x4A (74)

#define addr 0x4A

plūdė cTemp = 0.0;

negaliojanti sąranka ()

{

// Nustatyti kintamąjį

Particle.variable ("i2cdevice", "STS21");

Particle.variable ("cTemp", cTemp);

// Inicijuoti I2C komunikaciją kaip MASTER

Wire.begin ();

// Pradėkite nuoseklųjį ryšį, nustatykite duomenų perdavimo spartą = 9600

Serial.begin (9600);

vėlavimas (300);}

tuštumos kilpa ()

{

nepasirašyti int duomenys [2];

// Pradėti I2C perdavimą

Wire.beginTransmission (addr);

// Pasirinkite nelaikymo šabloną

Wire.write (0xF3);

// Baigti I2C perdavimą

Wire.endTransmission ();

vėlavimas (500);

// Prašyti 2 baitų duomenų

Wire.requestFrom (addr, 2);

// Skaityti 2 baitus duomenų

jei (Wire.available () == 2)

{

duomenys [0] = Wire.read ();

duomenys [1] = Wire.read ();

}

// Konvertuoti duomenis

int rawtmp = duomenys [0] * 256 + duomenys [1];

int vertė = rawtmp & 0xFFFC;

cTemp = -46,85 + (175,72 * (vertė / 65536,0));

plūdė fTemp = cTemp * 1,8 + 32;

// Išvesti duomenis į prietaisų skydelį

Particle.publish ("Temperatūra Celsijaus laipsniais:", Styga (cTemp));

Particle.publish ("Temperatūra Farenheitu:", Styga (fTemp));

vėlavimas (1000);

}

4 žingsnis: programos:

STS21 skaitmeninis temperatūros jutiklis gali būti naudojamas sistemose, kuriose reikia didelio tikslumo temperatūros stebėjimo. Jis gali būti integruotas į įvairią kompiuterinę įrangą, medicinos įrangą ir pramonines valdymo sistemas, reikalaujant tiksliai išmatuoti temperatūrą.

Rekomenduojamas: