Turinys:
- 1 žingsnis: kaip tai paprastai veikia
- 2 žingsnis: prijungimas ir tinkamas laidų prijungimas
- 3 žingsnis: naudojimo tipas
- 4 žingsnis: didelė kodo problema matuojant
- 5 žingsnis: kodo 1 dalis
- 6 žingsnis: kodo 2 dalis
- 7 žingsnis: Rezultatai
Video: „Arduino AD8495“termometras: 7 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:48
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
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
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
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
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
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
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
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:
„Nixie“termometras ir higrometras su „Arduino Nano“: 6 žingsniai
„Nixie“termometras ir higrometras su „Arduino Nano“: kaip praleisti laiką linksmindamiesi ir daug mokydamiesi dėl padidinimo keitiklių, vieno laido jutiklių, „Nixie“vamzdelių, „Arduino“kodavimo. Šiuo laikotarpiu mūsų visų prašoma likti namuose, kad apsaugotume save ir kitus nuo COVID-19. Tai geriausias laikas naudoti
„Arduino“picos papildymo termometras: 7 žingsniai
„Arduino“picos užpylimo termometras: Kiekvienas žmogus patyrė tą akimirką, kai yra per daug nekantrus ir tiesiog turi išgerti pirmą kąsnelį picos ką tik iš orkaitės, kad tik sudegintų burnos stogą tūkstančio saulių kaitroje. Žinau, kad turėjau tokių akimirkų ir baigiu
„IOT ThermoGun“- „Smart IR Body Temp“termometras - „Ameba Arduino“: 3 žingsniai
„IOT ThermoGun“- išmanusis infraraudonųjų spindulių kūno termometras - Ameba Arduino: Kadangi COVID -19 vis dar žlugdo visame pasaulyje ir sukelia tūkstančius mirčių, milijonai hospitalizuotų, bet koks naudingas medicinos prietaisas yra labai paklausus, ypač buitinis medicinos prietaisas, pvz., IR bekontaktis termometras? . Rankinis termometras paprastai yra
„Arduino“lazerinis infraraudonųjų spindulių termometras: 7 žingsniai (su nuotraukomis)
„Arduino“lazerinis infraraudonųjų spindulių termometras: Šiame projekte aš jums parodysiu, kaip sukurti skaitmeninį lazerinį infraraudonųjų spindulių termometrą su pasirinktiniu 3D spausdinimo korpusu
Arduino pagrindu veikiantis bekontaktis infraraudonųjų spindulių termometras - IR termometras naudojant „Arduino“: 4 žingsniai
„Arduino“nekontaktinis infraraudonųjų spindulių termometras | Infraraudonųjų spindulių termometras naudojant „Arduino“: Sveiki vaikinai, šioje instrukcijoje mes pagaminsime bekontaktį termometrą naudodami arduino. Kadangi kartais skysčio/kietos medžiagos temperatūra yra per aukšta arba per žema, tada sunku su juo susisiekti ir perskaityti Temperatūra tada tokioje aplinkoje