Përmbajtje:

Monitorimi i temperaturës duke përdorur MCP9808 dhe Foton Particle: 4 Hapa
Monitorimi i temperaturës duke përdorur MCP9808 dhe Foton Particle: 4 Hapa

Video: Monitorimi i temperaturës duke përdorur MCP9808 dhe Foton Particle: 4 Hapa

Video: Monitorimi i temperaturës duke përdorur MCP9808 dhe Foton Particle: 4 Hapa
Video: The Choice is Ours (2016) Official Full Version 2024, Korrik
Anonim
Image
Image

MCP9808 është një sensor dixhital i temperaturës shumë i saktë mini 0.5 ° C mini modul I2C. Ato janë të mishëruara me regjistra të programueshëm nga përdoruesit që lehtësojnë aplikimet e ndjeshmërisë së temperaturës. Sensori i temperaturës me saktësi të lartë MCP9808 është bërë një standard i industrisë për sa i përket faktorit të formës dhe inteligjencës, duke siguruar sinjale të kalibruara, të linearizuara të sensorit në formatin dixhital, I2C.

Në këtë tutorial është demonstruar ndërfaqja e modulit të sensorit MCP9808 me fotonin e grimcave. Për të lexuar vlerat e temperaturës, ne kemi përdorur mjedër pi me një përshtatës I2c. Ky përshtatës I2C e bën lidhjen me modulin e sensorit të lehtë dhe më të besueshëm.

Hapi 1: Kërkohet harduer:

Kërkohet harduer
Kërkohet harduer
Kërkohet harduer
Kërkohet harduer
Kërkohet harduer
Kërkohet harduer

Materialet që na duhen për të arritur qëllimin tonë përfshijnë përbërësit e mëposhtëm të harduerit:

1. MCP9808

2. Fotoni i grimcave

3. Kabllo I2C

4. Mburoja I2C për fotonin e grimcave

Hapi 2: Bashkimi i harduerit:

Lidhja e harduerit
Lidhja e harduerit
Lidhja e harduerit
Lidhja e harduerit

Seksioni i lidhjes së harduerit në thelb shpjegon lidhjet e telave të kërkuara midis sensorit dhe fotonit të grimcave. Sigurimi i lidhjeve të sakta është nevoja themelore gjatë punës në çdo sistem për daljen e dëshiruar. Pra, lidhjet e nevojshme janë si më poshtë:

MCP9808 do të funksionojë mbi I2C. Këtu është shembulli i diagramit të instalimeve elektrike, duke demonstruar se si të lidhni secilën ndërfaqe të sensorit.

Jashtë kutisë, bordi është i konfiguruar për një ndërfaqe I2C, si i tillë ne rekomandojmë përdorimin e këtij bashkimi nëse përndryshe jeni agnostik. Gjithçka që ju nevojitet janë katër tela!

Vetëm katër lidhje kërkohen kunjat Vcc, Gnd, SCL dhe SDA dhe këto janë të lidhura me ndihmën e kabllit I2C.

Këto lidhje demonstrohen në fotot e mësipërme.

Hapi 3: Kodi për Matjen e Temperaturës:

Kodi për Matjen e Temperaturës
Kodi për Matjen e Temperaturës

Le të fillojmë me kodin e grimcave tani.

Ndërsa përdorim modulin e sensorit me arduino, ne përfshijmë bibliotekën application.h dhe spark_wiring_i2c.h. Biblioteka "application.h" dhe spark_wiring_i2c.h përmban funksione të cilat lehtësojnë komunikimin i2c midis sensorit dhe grimcës.

I gjithë kodi i grimcave është dhënë më poshtë për lehtësinë e përdoruesit:

#përfshi

#përfshi

// Adresa MCP9808 I2C është 0x18 (24)

#përcaktoni Addr 0x18

noton cTemp = 0, fTemp = 0;

void setup ()

{

// Vendos ndryshoren

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

Particle.variable ("cTemp", cTemp);

// Filloni komunikimin I2C si MASTER

Wire.begin ();

// Filloni Komunikimin Serial, vendosur normën e baudit = 9600

Serial.filloj (9600);

// Filloni Transmetimin I2C

Wire.beginTransmetimi (Addr);

// Zgjidhni regjistrin e konfigurimit

Wire.write (0x01);

// Mënyra e konvertimit të vazhdueshëm, Parazgjedhja e ndezjes

Wire.write (0x00);

Wire.write (0x00);

// Ndaloni Transmetimin I2C

Wire.endTransmission ();

// Filloni Transmetimin I2C

Wire.beginTransmetimi (Addr);

// Zgjidhni regjistrin e rezolucionit

Wire.write (0x08);

// Rezoluta = +0.0625 / C

Wire.write (0x03);

// Ndaloni Transmetimin I2C

Wire.endTransmission ();

vonesë (300);

}

lak void ()

{

të dhëna int të panënshkruara [2];

// Fillon komunikimin I2C

Wire.beginTransmetimi (Addr);

// Zgjidh regjistrin e të dhënave

Wire.write (0x05);

// Ndaloni transmetimin I2C

Wire.endTransmission ();

// Kërkoni 2 bajt të dhëna

Tela. Kërkohet Nga (Addr, 2);

// Lexoni 2 bajt të dhëna

// temp msb, temp lsb

nëse (Wire. në dispozicion () == 2)

{

të dhëna [0] = Wire.read ();

të dhëna [1] = Wire.read ();

}

vonesë (300);

// Shndërroni të dhënat në 13-bit

int temp = ((të dhënat [0] & 0x1F) * 256 + të dhëna [1]);

nëse (temp> 4095)

{

temp -= 8192;

}

cTemp = temp * 0.0625;

fTemp = cTemp * 1.8 + 32;

// Dalja e të dhënave në pult

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

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

vonesë (500);

}

Funksioni Particle.variable () krijon variablat për të ruajtur daljen e sensorit dhe funksioni Particle.publish () shfaq daljen në pultin e faqes.

Dalja e sensorit tregohet në figurën e mësipërme për referencën tuaj.

Hapi 4: Aplikimet:

Aplikimet
Aplikimet

Sensori i Temperaturës Dixhitale MCP9808 ka disa aplikime të nivelit të industrisë të cilat përfshijnë ngrirës dhe frigoriferë industrialë së bashku me përpunues të ndryshëm të ushqimit. Ky sensor mund të përdoret për kompjuterë të ndryshëm personal, serverë, si dhe pajisje të tjera periferike të kompjuterit.

Recommended: