Բովանդակություն:

Arduino AD8495 rmերմաչափ ՝ 7 քայլ
Arduino AD8495 rmերմաչափ ՝ 7 քայլ

Video: Arduino AD8495 rmերմաչափ ՝ 7 քայլ

Video: Arduino AD8495 rmերմաչափ ՝ 7 քայլ
Video: Аналоговый усилитель термопары типа-К на AD8495 2024, Հուլիսի
Anonim
Arduino AD8495 rmերմաչափ
Arduino AD8495 rmերմաչափ
Arduino AD8495 rmերմաչափ
Arduino AD8495 rmերմաչափ
Arduino AD8495 rmերմաչափ
Arduino AD8495 rmերմաչափ
Arduino AD8495 rmերմաչափ
Arduino AD8495 rmերմաչափ

Արագ ուղեցույց, թե ինչպես լուծել ձեր խնդիրները այս տիպի ջերմաչափի միջոցով: Հուսով ենք, որ դա կօգնի:)

Հետևյալ նախագծի համար ձեզ հարկավոր է.

1x Arduino (ցանկացած տեսակի, մեզ թվում էր, որ ունենք 1 Arduino Nano անվճար)

1x AD8495 (այն սովորաբար գալիս է որպես սենսոր և ամեն ինչ)

6x Jumper լարեր (AD8495- ը Arduino- ին կապող)

եռակցման երկաթ և զոդման մետաղալար

ԸՆՏՐՈԹՅՈՆ:

1x 9V մարտկոց

2x դիմադրություն (մենք օգտագործել ենք 1x 10kOhms և 2x5kOhms, քանի որ 2x5k- ը միացրել ենք միասին)

Խնդրում ենք զգույշ լինել ՝ խնամքով շարունակելու և ձեր մատների համար հսկելու համար: Eringոդման երկաթը կարող է այրվածքներ առաջացնել, եթե խնամքով չզբաղվեք:

Քայլ 1: Ինչպես է այն ընդհանուր առմամբ աշխատում

Ինչպես է այն ընդհանուր առմամբ աշխատում
Ինչպես է այն ընդհանուր առմամբ աշխատում

Սովորաբար այս ջերմաչափը Adafruit- ի արտադրանքն է, այն ունի K տիպի տվիչ, որը կարող է օգտագործվել գրեթե ամեն ինչի համար ՝ տան կամ նկուղի ջերմաստիճանի չափումից մինչև վառարանի և ջեռոցի ջերմության չափում: Այն կարող է դիմակայել -260 աստիճանից մինչև 980 ջերմաստիճանի, և էներգիայի մատակարարման որոշ փոքր ճշգրտումներով այն հասնում է մինչև 1380 աստիճանի C (ինչը բավականին ուշագրավ է), և դա նույնպես բավականին ճշգրիտ է ՝ +/- 2 աստիճանով տատանումները դա չափազանց օգտակար են: Եթե դա անեք այնպես, ինչպես մենք արեցինք Arduino Nano- ի հետ, ապա այն կարող եք փաթեթավորել նաև փոքր տուփի մեջ (հաշվի առնելով, որ դուք ինքներդ եք պատրաստելու ձեր տուփը, որը ներառված չէ այս ձեռնարկում):

Քայլ 2: Միացում և պատշաճ միացում

Միացում և ճիշտ միացում
Միացում և ճիշտ միացում
Միացում և պատշաճ միացում
Միացում և պատշաճ միացում
Միացում և պատշաճ միացում
Միացում և պատշաճ միացում

Ինչպես ստացանք, փաթեթն այսպիսին էր, ինչպես տեսնում եք վերևի լուսանկարներից: Դուք կարող եք օգտագործել jumper լարերը `այն Arduino- ի տախտակին միացնելու համար, բայց ես խորհուրդ կտայի լարերը միացնել, քանի որ այն աշխատում է շատ փոքր լարման վրա, այնպես որ ցանկացած աննշան շարժում կարող է փչացնել արդյունքները:

Վերոնշյալ լուսանկարները վերցված են այն բանից, թե ինչպես ենք մենք լարերը սոսնձել սենսորի վրա: Մեր նախագծի համար մենք օգտագործեցինք Arduino Nano- ն, և ինչպես տեսնում եք, մենք մի փոքր փոփոխեցինք մեր Arduino- ն, ինչպես նաև մեր չափումներից օպտիմալ արդյունքներ ստանալու համար:

Քայլ 3: Օգտագործման տեսակը

Օգտագործման տեսակը
Օգտագործման տեսակը

Ըստ տվյալների թերթիկի ՝ այս սենսորը կարող է օգտագործվել -260 -ից մինչև 980 աստիճան C- ի չափման համար Arduino 5V սովորական սնուցման աղբյուրով կամ կարող եք ավելացնել արտաքին էներգիայի աղբյուր, որը հնարավորություն կտա չափել մինչև 1380 աստիճան: Բայց զգույշ եղեք, եթե ջերմաչափը Arduino- ին վերադարձնի ավելի քան 5V, այն կարող է վնասել ձեր Arduino- ին, և ձեր նախագիծը կարող է դատապարտված լինել ձախողման:

Այս խնդիրը հաղթահարելու համար մենք սարքի վրա տեղադրում ենք լարման բաժանարար, որը մեր դեպքում Vout- ից Vin լարման կեսն է:

Տվյալների թերթիկի հղումներ.

www.analog.com/media/hy/technical-documenta…

www.analog.com/media/hy/technical-documenta…

Քայլ 4. Չափելիս օրենսգրքի մեծ խնդիրը

Չափելիս օրենսգրքի մեծ խնդիրը
Չափելիս օրենսգրքի մեծ խնդիրը

Theերմաչափի տվյալների թերթի համաձայն, ռեֆերենտ լարումը 1.25V է: Մեր չափումներում դա այդպես չէր… Հետագա փորձարկումների արդյունքում մենք պարզեցինք, որ հղման լարումը փոփոխական է և մենք փորձարկեցինք երկու համակարգչի վրա, երկուսում էլ դա տարբեր էր (!?!): Դե, մենք գրատախտակ ենք դնում տախտակի վրա (ինչպես ցույց է տրված վերևի նկարում) և ծածկագրում մի տող ենք դնում, որ ամեն անգամ հաշվարկումից առաջ կարդանք հղման լարման արժեքը:

Դրա հիմնական բանաձևն է Temp = (Vout-1.25) / 0.005:

Մեր բանաձևում մենք այն կազմել ենք ՝ Temp = (Vout-Vref) / 0.005:

Քայլ 5. Կոդ 1 -ին մաս

Օրենսգիրք Մաս 1
Օրենսգիրք Մաս 1
Օրենսգիրք Մաս 1
Օրենսգիրք Մաս 1

const int AnalogPin = A0; // Անալոգային քորոց ՝ temp readconst int- ի համար AnalogPin2 = A1; // Անալոգային քորոց ՝ հղման արժեքի բոց Temp կարդալու համար; // Temperaturefloat Vref; // Referent voltagefloat Vout; // Լարումը adcfloat SenVal- ից հետո; // սենսորային արժեք float SenVal2; // Սենսորային արժեքը referent pinvoid setup () {Serial.begin (9600); } void loop () {SenVal = analogRead (A0); // Անալոգային արժեք ջերմաստիճանից SenVal2 = analogRead (A1); // Անալոգային արժեք ռեֆերենտ pinVref = (SenVal2 *5.0) /1024.0; // Անալոգային թվայինի փոխակերպում հղման արժեքի համար Vout = (SenVal * 5.0) /1024.0; // Անալոգային թվայինի փոխակերպում ջերմաստիճանի ընթերցման լարման համար Temp = (Vout - Vref) /0.005; // peratերմաստիճանի հաշվարկ Serial.print ("Temperature ="); Serial.println (Temp); Serial.print ("Referent Voltage ="); Serial.println (Vref); ուշացում (200);}

Այս կոդը օգտագործվում է, երբ Դուք օգտագործում եք Arduino- ի էներգիան (արտաքին էներգիայի աղբյուր չկա): Սա կսահմանափակի ձեր չափումը մինչև 980 աստիճան C ՝ ըստ տվյալների թերթի:

Քայլ 6. Կոդ 2 -րդ մաս

Օրենսգիրք Մաս 2
Օրենսգիրք Մաս 2
Օրենսգիրք Մաս 2
Օրենսգիրք Մաս 2

const int AnalogPin = A0; // Անալոգային քորոց ՝ temp readconst int- ի համար AnalogPin2 = A1; // Անալոգային քորոց, որտեղից մենք կարդում ենք ռեֆերենտ արժեքը (Մենք դա պետք է անեինք, քանի որ սենսորի ռեֆերենտ արժեքը անկայուն է) լողում Temp; // Temperaturefloat Vref; // Referent voltagefloat Vhalf; // Լարվածությունը բաժանարար լողացող Vout- ից հետո կարդացած arduino- ում; // Լարում փոխակերպումից հետո բոց SenVal; // սենսորային արժեք float SenVal2; // Սենսորային արժեք այն վայրից, որտեղից ստանում ենք referent valuevoid setup () {Serial.begin (9600); } void loop () {SenVal = analogRead (A0); // Անալոգային ելքային արժեքըSenVal2 = analogRead (A1); // Անալոգային ելք, որտեղից մենք ստանում ենք ռեֆերենտ արժեք Vref = (SenVal2 * 5.0) /1024.0; // Անալոգային արժեքի փոխանցում ռեֆերենտ փինից դեպի թվային արժեքVhalf = (SenVal * 5.0) /1024.0; // Անալոգային փոխակերպել թվային արժեքի Vout = 2 * Vhalf; // Լարման հաշվարկը լարման կիսման բաժանարարից հետո Temp = (Vout - Vref) /0.005; // Temերմաստիճանի բանաձևի հաշվարկ.println (Vref); ուշացում (100);}

Սա կոդը է, եթե դուք օգտագործում եք արտաքին էներգիայի աղբյուր, և դրա համար մենք օգտագործում ենք լարման բաժանարար: Ահա թե ինչու մենք ունենք «Vhalf» արժեքը ներսում: Մեր օգտագործվող լարման բաժանարարը (տես 3 -րդ մասը) կազմում է մուտքային լարման կեսը (R1- ն ունի նույն օհմ արժեքները, ինչ R2- ը), քանի որ մենք օգտագործել էինք 9 Վ մարտկոց: Ինչպես նշվեց վերևում, 5 Վ -ից բարձր ցանկացած լարում կարող է վնասել ձեր Arduino- ին, այնպես որ մենք այն հասցրեցինք առավելագույն 4.5 Վ (ինչը այս դեպքում անհնար է, քանի որ լարման բաժանարարից հետո սենսորից ստացվող առավելագույն էներգիան կարող է լինել 3,5 Վ -ի սահմաններում):

Քայլ 7: Արդյունքներ

Արդյունքները
Արդյունքները
Արդյունքները
Արդյունքները
Արդյունքները
Արդյունքները
Արդյունքները
Արդյունքները

Ինչպես տեսնում եք վերևի սքրինշոթներից, մենք այն փորձարկել ենք և աշխատում է: Բացի այդ, մենք ձեզ տրամադրեցինք օրիգինալ Arduino ֆայլեր:

Սա այն է: Հուսով ենք, որ այն կօգնի ձեզ ձեր նախագծերում:

Խորհուրդ ենք տալիս: