Talaan ng mga Nilalaman:

Pagsukat ng Temperatura Gamit ang TMP112 at Particle Photon: 4 na Hakbang
Pagsukat ng Temperatura Gamit ang TMP112 at Particle Photon: 4 na Hakbang

Video: Pagsukat ng Temperatura Gamit ang TMP112 at Particle Photon: 4 na Hakbang

Video: Pagsukat ng Temperatura Gamit ang TMP112 at Particle Photon: 4 na Hakbang
Video: LIFE AFTER DEATH - Mysteries with a History 2024, Hulyo
Anonim
Image
Image

TMP112 Mataas na Kawastuhan, Mababang-Kapangyarihan, Digital Temperatura Sensor I2C MINI module. Ang TMP112 ay perpekto para sa pinalawig na pagsukat ng temperatura. Nag-aalok ang aparatong ito ng isang kawastuhan ng ± 0.5 ° C nang hindi nangangailangan ng pagkakalibrate o panlabas na bahagi ng signal signal.

Sa tutorial na ito ang paglalagay ng interface ng module ng sensor ng TMP112 na may maliit na butil na poton ay nailarawan. Upang mabasa ang mga halagang temperatura, ginamit namin ang arduino na may isang I2c adapter. Ginagawa ng adapter ng I2C na ito ang koneksyon sa module ng sensor na 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 mga materyal na kailangan namin para makamit ang aming layunin ay may kasamang mga sumusunod na bahagi ng hardware:

1. TMP112

2. Particle Photon

3. I2C Cable

4. I2C Shield para sa poton ng maliit na butil

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 particle foton. 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 TMP112 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: Code para sa Pagsukat ng Temperatura:

Code para sa Pagsukat ng Temperatura
Code para sa Pagsukat ng Temperatura

Hinahayaan nating magsimula sa code ng maliit na butil ngayon.

Habang ginagamit ang module ng sensor na may arduino, nagsasama kami ng application.h at spark_wiring_i2c.h library. Ang "application.h" at spark_wiring_i2c.h library ay naglalaman ng mga pagpapaandar na nagpapadali sa komunikasyon ng i2c sa pagitan ng sensor at ng maliit na butil.

Ang buong code ng maliit na butil ay ibinibigay sa ibaba para sa kaginhawaan ng gumagamit:

# isama

# isama

// TMP112 I2C address ay 0x48 (72)

# tukuyin ang Addr 0x48

doble cTemp = 0.0, fTemp = 0.0;

walang bisa ang pag-setup ()

{

// Itakda ang variable

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

Particle.variable ("cTemp", cTemp);

// Initialise I2C na komunikasyon bilang MASTER

Wire.begin ();

// Initialise Serial komunikasyon, itakda ang baud rate = 9600

Serial.begin (9600);

// Start I2C Transmission

Wire.beginTransmission (Addr);

// Piliin ang rehistro ng pagsasaayos

Wire.write (0x01);

// Patuloy na conversion, mode ng kumpare, resolusyon na 12-bit

Wire.write (0x60);

Wire.write (0xA0);

// Stop I2C Transmission

Wire.endTransmission ();

pagkaantala (300);

}

walang bisa loop ()

{

unsigned int data [2];

// Start I2C Transmission

Wire.beginTransmission (Addr);

// Pumili ng rehistro ng data ng temperatura

Wire.write (0x00);

// Stop I2C Transmission

Wire.endTransmission ();

pagkaantala (300);

// Humiling ng 2 byte ng data

Wire.requestFrom (Addr, 2);

// Basahin ang 2 bytes ng data

// temp msb, temp lsb

kung (Wire.available () == 2)

{

data [0] = Wire.read ();

data [1] = Wire.read ();

}

// I-convert ang data sa 12-bit

int temp = ((data [0] * 256) + (data [1])) / 16;

kung (temp> 2048)

{

temp - = 4096;

}

cTemp = temp * 0.0625;

fTemp = cTemp * 1.8 + 32;

// Output data sa dashboard

Particle.publish ("Temperatura sa Celsius:", String (cTemp));

pagkaantala (1000);

Particle.publish ("Temperatura sa Fahrenheit:", String (fTemp));

pagkaantala (1000);

}

Ang function ng Particle.variable () ay lumilikha ng mga variable upang maiimbak ang output ng sensor at ipinapakita ng pagpapaandar ng Particle.publish () ang output sa dashboard ng site.

Ang output ng sensor ay ipinapakita sa larawan sa itaas para sa iyong sanggunian.

Hakbang 4: Mga Aplikasyon:

Mga Aplikasyon
Mga Aplikasyon

Ang iba't ibang mga application na nagsasama ng mababang lakas ng TMP112, mataas na kawastuhan ng digital temperatura sensor ay kasama ang Pagsubaybay sa Temperatura ng Power-Supply, Computer Peripheral Thermal Protection, Pamamahala ng Baterya pati na rin ang mga machine machine.

Inirerekumendang: