Բովանդակություն:
- Քայլ 1: Պահանջվում է սարքավորում
- Քայլ 2: Սարքավորման միացում
- Քայլ 3. Codeերմաստիճանի չափման կոդ
- Քայլ 4: Դիմումներ
Video: MPերմաստիճանի չափում TMP112- ի և մասնիկի ֆոտոնի միջոցով `4 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:47
TMP112 Բարձր ճշգրտության, ցածր էներգիայի, թվային ջերմաստիճանի տվիչ I2C MINI մոդուլ: TMP112- ը իդեալական է երկարացված ջերմաստիճանի չափման համար: Այս սարքն առաջարկում է ± 0.5 ° C ճշգրտություն ՝ առանց չափաբերման կամ արտաքին բաղադրիչի ազդանշանի կոնդիցիոներ պահանջելու:
Այս ձեռնարկում պատկերված է TMP112 սենսորային մոդուլի ինտերֆեյսը մասնիկ ֆոտոնի հետ: Temperatureերմաստիճանի արժեքները կարդալու համար մենք օգտագործել ենք arduino- ն I2c ադապտերով: Այս I2C ադապտերը դյուրին և հուսալի է դարձնում սենսորային մոդուլի հետ կապը:
Քայլ 1: Պահանջվում է սարքավորում
Նյութերը, որոնք մեզ անհրաժեշտ են մեր նպատակին հասնելու համար, ներառում են հետևյալ ապարատային բաղադրիչները.
1. TMP112
2. Ֆոտոն մասնիկ
3. I2C մալուխ
4. I2C վահան մասնիկի ֆոտոնի համար
Քայլ 2: Սարքավորման միացում
Սարքավորումների միացման բաժինը հիմնականում բացատրում է սենսորի և մասնիկ ֆոտոնի միջև պահանջվող լարերի միացումները: Connectionsանկալի ելքի համար ցանկացած համակարգի վրա աշխատելիս հիմնական անհրաժեշտությունն է հիմնական կապերի ապահովումը: Այսպիսով, անհրաժեշտ կապերը հետևյալն են.
TMP112- ը կաշխատի I2C- ով: Ահա միացման սխեմայի օրինակ, որը ցույց է տալիս, թե ինչպես միացնել սենսորի յուրաքանչյուր միջերեսը:
Տուփից դուրս, տախտակը կազմաձևված է I2C ինտերֆեյսի համար, ուստի խորհուրդ ենք տալիս օգտագործել այս կապը, եթե այլապես ագնոստիկ եք: Ձեզ անհրաժեշտ է չորս լար:
Միայն չորս միացում է պահանջվում Vcc, Gnd, SCL և SDA կապում, որոնք միացված են I2C մալուխի օգնությամբ:
Այս կապերը ցուցադրվում են վերը նշված նկարներում:
Քայլ 3. Codeերմաստիճանի չափման կոդ
Եկեք հիմա սկսենք մասնիկների կոդով:
Arduino- ի հետ սենսորային մոդուլն օգտագործելիս մենք ներառում ենք application.h և spark_wiring_i2c.h գրադարանը: «application.h» և spark_wiring_i2c.h գրադարանը պարունակում են գործառույթներ, որոնք հեշտացնում են i2c հաղորդակցությունը սենսորի և մասնիկի միջև:
Օգտվողի հարմարության համար ստորև բերված է մասնիկների ամբողջ ծածկագիրը.
#ներառում
#ներառում
// TMP112 I2C հասցեն ՝ 0x48 (72)
#սահմանեք Addr 0x48
կրկնակի cTemp = 0.0, fTemp = 0.0;
դատարկ կարգավորում ()
{
// Սահմանել փոփոխական
Particle.variable («i2cdevice», «TMP112»);
Particle.variable («cTemp», cTemp);
// Նախնականացնել I2C հաղորդակցությունը որպես ՎԱՐՊԵՏ
Wire.begin ();
// Նախնականացնել սերիական հաղորդակցություն, սահմանել բաուդ արագություն = 9600
Serial.begin (9600);
// Սկսել I2C փոխանցումը
Wire.beginTransmission (Addr);
// Ընտրեք կազմաձևման գրանցամատյան
Wire.write (0x01);
// Շարունակական փոխակերպում, համեմատիչի ռեժիմ, 12-բիթանոց լուծում
Wire.write (0x60);
Wire.write (0xA0);
// Դադարեցնել I2C փոխանցումը
Wire.endTransmission ();
ուշացում (300);
}
դատարկ շրջան ()
{
անստորագիր int տվյալներ [2];
// Սկսել I2C փոխանցումը
Wire.beginTransmission (Addr);
// Ընտրեք ջերմաստիճանի տվյալների գրանցամատյան
Wire.write (0x00);
// Դադարեցնել I2C փոխանցումը
Wire.endTransmission ();
ուշացում (300);
// Պահանջել 2 բայթ տվյալներ
Մետաղալար. Խնդրում ենք (Addr, 2);
// Կարդացեք 2 բայթ տվյալներ
// temp msb, temp lsb
եթե (Wire.available () == 2)
{
տվյալներ [0] = Wire.read ();
տվյալներ [1] = Wire.read ();
}
// Տեղափոխեք տվյալները 12 բիթ
int temp = ((տվյալները [0] * 256) + (տվյալները [1])) / 16;
եթե (ջերմաստիճան> 2048)
{
ջերմաստիճան -= 4096;
}
cTemp = temp * 0.0625;
fTemp = cTemp * 1.8 + 32;
// Տվյալների մուտքագրում վահանակ
Particle.publish ("Cերմաստիճանը Celsius:", լարային (cTemp));
ուշացում (1000);
Particle.publish («ahերմաստիճանը Ֆարենհայտում.», Լարային (fTemp));
ուշացում (1000);
}
Particle.variable () գործառույթը ստեղծում է սենսորի ելքը պահելու փոփոխականները, իսկ Particle.publish () գործառույթը ցուցադրում է ելքը կայքի վահանակի վրա:
Սենսորային ելքը ցուցադրվում է վերևի նկարում ՝ ձեր տեղեկանքի համար:
Քայլ 4: Դիմումներ
TMP112 ցածր էներգիայի, բարձր ճշգրտության ջերմաստիճանի տվիչ ներառող տարբեր ծրագրեր ներառում են էներգիայի մատակարարման ջերմաստիճանի մոնիտորինգ, համակարգչային ծայրամասային ջերմային պաշտպանություն, մարտկոցի կառավարում, ինչպես նաև գրասենյակային մեքենաներ:
Խորհուրդ ենք տալիս:
ADXL345- ի և մասնիկի ֆոտոնի միջոցով արագացման չափում. 4 քայլ
ADXL345- ի և մասնիկի ֆոտոնի միջոցով արագացման չափում. ADXL345- ը փոքր, բարակ, ծայրահեղ ցածր հզորության, 3 առանցքի արագացուցիչ է `բարձր լուծաչափով (13 բիթ) չափմամբ մինչև ± 16 գ: Թվային ելքային տվյալները ձևաչափվում են որպես 16-բիթ երկակի լրացում և հասանելի են I2 C թվային ինտերֆեյսի միջոցով: Չափում է
H3LIS331DL- ի և մասնիկի ֆոտոնի միջոցով արագացման չափում. 4 քայլ
H3LIS331DL- ի և մասնիկի ֆոտոնի միջոցով արագացման չափում. H3LIS331DL- ը ցածր էներգիայի բարձր արդյունավետությամբ 3 առանցքի գծային արագացուցիչ է, որը պատկանում է «նանո» ընտանիքին ՝ թվային I²C սերիական ինտերֆեյսով: H3LIS331DL- ն ունի 100 գ/g 200 գ/g 400 գ լիարժեք կշեռքներ օգտագործողի կողմից և ունակ է չափել արագացումները
Cերմաստիճանի չափում MCP9803- ի և մասնիկի ֆոտոնի միջոցով `4 քայլ
MCP9803- ի և Particle Photon- ի միջոցով ջերմաստիճանի չափում. MCP9803- ը 2 լարային բարձր ճշգրտության ջերմաստիճանի տվիչ է: Նրանք մարմնավորված են օգտագործողների կողմից ծրագրավորվող գրանցամատյաններով, որոնք հեշտացնում են ջերմաստիճանի զգայուն ծրագրերը: Այս սենսորը հարմար է բարձրակարգ բազմաշերտ ջերմաստիճանի մոնիտորինգի համակարգի համար:
Արագացման չափում BMA250- ի և մասնիկի ֆոտոնի միջոցով `4 քայլ
BMA250- ի և մասնիկի ֆոտոնի միջոցով արագացման չափում. BMA250- ը փոքր, բարակ, ծայրահեղ ցածր հզորության, 3 առանցքի արագացուցիչ է `բարձր լուծաչափով (13 բիթ) չափմամբ մինչև ± 16 գ: Թվային ելքային տվյալները ձևաչափվում են որպես 16-բիթ երկակի լրացում և հասանելի են I2C թվային ինտերֆեյսի միջոցով: Չափում է ստատիկ
Sերմաստիճանի չափում STS21- ի և մասնիկի ֆոտոնի միջոցով `4 քայլ
Sերմաստիճանի չափում STS21- ի և մասնիկի ֆոտոնի միջոցով. STS21 թվային ջերմաստիճանի տվիչն առաջարկում է գերազանց կատարում և տարածություն խնայող ոտնահետք: Այն ապահովում է տրամաչափված, գծային ազդանշաններ թվային, I2C ձևաչափով: Այս սենսորի պատրաստումը հիմնված է CMOSens տեխնոլոգիայի վրա, որը վերագրում է բարձրակարգ