Turinys:

„Arduino AD8495“termometras: 7 žingsniai
„Arduino AD8495“termometras: 7 žingsniai

Video: „Arduino AD8495“termometras: 7 žingsniai

Video: „Arduino AD8495“termometras: 7 žingsniai
Video: Использование Melexis MLX90614 Инфракрасный термометр с Arduino 2024, Liepa
Anonim
Arduino AD8495 termometras
Arduino AD8495 termometras
Arduino AD8495 termometras
Arduino AD8495 termometras
Arduino AD8495 termometras
Arduino AD8495 termometras
Arduino AD8495 termometras
Arduino AD8495 termometras

Trumpas vadovas, kaip išspręsti problemas naudojant šį K tipo termometrą. Tikimės, kad tai padės:)

Šiam projektui jums reikės:

1x „Arduino“(bet kokia, atrodė, kad turime tik vieną „Arduino Nano“)

1x AD8495 (paprastai jis yra komplekte su jutikliu ir viskas)

6x trumpieji laidai (jungiant AD8495 prie „Arduino“)

lituoklis ir litavimo viela

PASIRENKAMA:

1x 9V baterija

2x rezistoriai (mes naudojome 1x 10kOhms ir 2x5kOhms, nes 2x5k sujungėme kartu)

Būkite atsargūs ir saugokitės pirštų. Lydmetalis gali nudegti, jei su juo nebus elgiamasi atsargiai.

1 žingsnis: kaip tai paprastai veikia

Kaip tai paprastai veikia
Kaip tai paprastai veikia

Paprastai šis termometras yra „Adafruit“produktas, turintis K tipo jutiklį, kuris gali būti naudojamas beveik viskam-nuo namų ar rūsio temperatūros matavimo iki krosnies ir orkaitės šilumos matavimo. Jis gali atlaikyti temperatūrą nuo -260 ° C iki 980 ° C, o šiek tiek pakoregavus maitinimo šaltinį, jis pasiekia net 1380 ° C (tai yra gana nuostabu) ir yra gana tikslus, +/- 2 laipsnių variacija yra nepaprastai naudinga. Jei gaminsite taip, kaip mes padarėme su „Arduino Nano“, taip pat galite supakuoti jį į mažą dėžutę (atsižvelgiant į tai, kad pagaminsite savo dėžutę, kuri nėra įtraukta į šią pamoką).

2 žingsnis: prijungimas ir tinkamas laidų prijungimas

Prijungimas ir tinkamas laidų sujungimas
Prijungimas ir tinkamas laidų sujungimas
Prijungimas ir tinkamas laidų sujungimas
Prijungimas ir tinkamas laidų sujungimas
Prijungimas ir tinkamas laidų sujungimas
Prijungimas ir tinkamas laidų sujungimas

Kaip gavome, pakuotė buvo tokia, kaip matote iš aukščiau pateiktų nuotraukų. Norėdami prijungti jį prie „Arduino“plokštės, galite naudoti jungiamuosius laidus, tačiau aš rekomenduočiau lituoti laidus, nes jis veikia labai mažomis įtampomis, todėl bet koks nedidelis judesys gali sugadinti rezultatus.

Aukščiau pateiktos nuotraukos yra padarytos, kaip lituoti jutiklio laidus. Savo projektui mes naudojome „Arduino Nano“ir, kaip matote, šiek tiek pakeitėme „Arduino“, kad gautume optimalius matavimų rezultatus.

3 žingsnis: naudojimo tipas

Naudojimo tipas
Naudojimo tipas

Remiantis duomenų lapu, šis jutiklis gali būti naudojamas matuoti nuo -260 iki 980 laipsnių C, naudojant įprastą „Arduino“5 V maitinimo šaltinį, arba galite pridėti išorinį maitinimo šaltinį ir tai suteiks jums galimybę išmatuoti iki 1380 laipsnių. Tačiau saugokitės, jei termometras „Arduino“grąžina daugiau nei 5 V, kad jį perskaitytų, galite sugadinti „Arduino“ir jūsų projektas gali būti pasmerktas žlugti.

Norėdami išspręsti šią problemą, ant prietaiso uždedame įtampos daliklį, kuris mūsų atveju yra Vout iki pusės Vin įtampos.

Nuorodos į duomenų lapą:

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

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

4 žingsnis: didelė kodo problema matuojant

Didelė kodo problema matuojant
Didelė kodo problema matuojant

Remiantis termometro duomenų lapu, referencinė įtampa yra 1,25 V. Mūsų matavimuose taip nebuvo … Toliau bandydami išsiaiškinome, kad referencinė įtampa yra kintama, ir mes išbandėme du kompiuterius, abu buvo skirtingi (!?!). Na, mes įdedame kaištį ant lentos (kaip parodyta aukščiau esančiame paveikslėlyje) ir įvedame kodą į eilutę, kad kiekvieną kartą prieš apskaičiuojant būtų galima perskaityti referencinės įtampos vertę.

Pagrindinė to formulė yra Temp = (Vout-1,25) / 0,005.

Savo formulėje mes padarėme: Temp = (Vout-Vref) / 0.005.

5 žingsnis: kodo 1 dalis

Kodekso 1 dalis
Kodekso 1 dalis
Kodekso 1 dalis
Kodekso 1 dalis

const int AnalogPin = A0; // Analoginis kaištis temp readconst int AnalogPin2 = A1; // Analoginis kaištis referenciniam valuefloat skaitymui Temp; // Temperatofloat Vref; // Referent voltagefloat Vout; // Įtampa po adcfloat SenVal; // Sensor valuefloat SenVal2; // Jutiklio vertė iš referent pinvoid setup () {Serial.begin (9600); } void loop () {SenVal = analogRead (A0); // Analoginė vertė iš temperatūros SenVal2 = analogRead (A1); // Analoginė reikšmė iš nuorodos pinVref = (SenVal2 *5.0) /1024,0; // Konvertavimo analogas į skaitmeninį referentinei reikšmeiVout = (SenVal * 5.0) /1024,0; // Analoginis konvertavimas į skaitmeninį temperatūros nuskaitymo įtampai Temp = (Vout - Vref) /0,005; // Temperatūros skaičiavimas Serial.print ("Temperature ="); Serial.println (Temp); Serial.print ("Referent Voltage ="); Serial.println (Vref); delay (200);}

Šis kodas naudojamas, kai naudojate „Arduino“maitinimą (be išorinio maitinimo šaltinio). Tai apribos jūsų matavimą iki 980 laipsnių C pagal duomenų lapą.

6 žingsnis: kodo 2 dalis

Kodekso 2 dalis
Kodekso 2 dalis
Kodekso 2 dalis
Kodekso 2 dalis

const int AnalogPin = A0; // Analoginis kaištis temp readconst int AnalogPin2 = A1; // Analoginis kaištis, iš kurio skaitome referencinę reikšmę (Turėjome tai padaryti, nes jutiklio referencinė vertė yra nestabili) float Temp; // Temperatofloat Vref; // Referencinė įtampafloatas Vhalf; // Įtampa ant arduino, perskaityta po daliklio plūdės Vout; // Įtampa po konversijosfloat SenVal; // Sensor valuefloat SenVal2; // Jutiklio reikšmė iš to, iš kur gauname referencinę reikšmęvoid setup () {Serial.begin (9600); } void loop () {SenVal = analogRead (A0); // Analoginė išvesties vertėSenVal2 = analogRead (A1); // Analoginis išėjimas, iš kurio gauname referencinę reikšmęVref = (SenVal2 * 5.0) /1024.0; // Analoginės vertės perkėlimas iš atskaitos kaiščio į skaitmeninę reikšmęVhalf = (SenVal * 5.0) /1024.0; // Transformuoti analogą į skaitmeninę reikšmęVout = 2 * Vhalf; // Įtampos apskaičiavimas po pusės įtampos daliklioTemp = (Vout - Vref) /0,005; // Temperatūros formulės apskaičiavimasSerial.print ("Temperature ="); Serial.println (Temp); Serial.print ("Vout ="); Serial.println (Vout); Serial.print ("Reference Voltage ="); Serial.print.println (Vref); uždelsimas (100);}

Tai kodas, jei naudojate išorinį maitinimo šaltinį ir tam mes naudojame įtampos skirstytuvą. Štai kodėl mes turime „Vhalf“vertę. Mūsų naudojamas įtampos skirstytuvas (žr. 3 dalį) yra pusė gaunamos įtampos (R1 turi tokias pačias omų reikšmes kaip ir R2), nes mes naudojome 9 V bateriją. Kaip minėta aukščiau, bet kuri įtampa, didesnė nei 5 V, gali sugadinti jūsų „Arduino“, todėl mes pasiekėme maksimalią 4,5 V įtampą (šiuo atveju tai neįmanoma, nes didžiausia galios išvestis iš jutiklio po įtampos skirstytuvo gali būti maždaug 3,5 V).

7 žingsnis: Rezultatai

Rezultatai
Rezultatai
Rezultatai
Rezultatai
Rezultatai
Rezultatai
Rezultatai
Rezultatai

Kaip matote iš aukščiau pateiktų ekrano kopijų, mes jį išbandėme ir jis veikia. Be to, mes jums pateikėme originalius „Arduino“failus.

Tai viskas, tikimės, kad tai padės jums įgyvendinti jūsų projektus.

Rekomenduojamas: