Satura rādītājs:

Arduino AD8495 termometrs: 7 soļi
Arduino AD8495 termometrs: 7 soļi

Video: Arduino AD8495 termometrs: 7 soļi

Video: Arduino AD8495 termometrs: 7 soļi
Video: Использование Melexis MLX90614 Инфракрасный термометр с Arduino 2024, Novembris
Anonim
Arduino AD8495 termometrs
Arduino AD8495 termometrs
Arduino AD8495 termometrs
Arduino AD8495 termometrs
Arduino AD8495 termometrs
Arduino AD8495 termometrs
Arduino AD8495 termometrs
Arduino AD8495 termometrs

Īss ceļvedis, kā atrisināt problēmas ar šo K veida termometru. Mēs ceram, ka tas palīdz:)

Šim projektam jums būs nepieciešams:

1x Arduino (jebkura veida, mums vienkārši šķita, ka mums ir 1 Arduino Nano bez maksas)

1x AD8495 (parasti komplektā ietilpst sensors un viss)

6x Jumper vadi (savieno AD8495 ar Arduino)

lodāmurs un lodēšanas stieple

NEOBLIGĀTI:

1x 9V akumulators

2x rezistori (mēs izmantojām 1x 10kOhm un 2x5kOhms, jo 2x5k savienojām kopā)

Lūdzu, esiet piesardzīgs un rīkojieties piesardzīgi un uzmaniet pirkstus. Lodēšanas gludeklis var izraisīt apdegumus, ja ar to rīkojas uzmanīgi.

1. darbība. Kā tas parasti darbojas

Kā tas parasti darbojas
Kā tas parasti darbojas

Parasti šis termometrs ir Adafruit produkts ar K tipa sensoru, ko var izmantot gandrīz jebko, sākot no mājas vai pagraba temperatūras mērīšanas līdz krāsns un krāsns siltuma mērīšanai. Tas var izturēt temperatūru no -260 ° C līdz 980, un ar nelieliem barošanas avota pielāgojumiem tas sasniedz pat 1380 ° C (kas ir diezgan ievērojams), un tas ir arī diezgan precīzs ar +/- 2 grādiem variācija ir ārkārtīgi noderīga. Ja jūs to izgatavojat tāpat kā mēs ar Arduino Nano, varat to iepakot arī nelielā kastītē (ņemot vērā, ka jūs izgatavosit savu kastīti, kas nav iekļauta šajā apmācībā).

2. darbība: savienošana un pareiza elektroinstalācija

Savienošana un pareiza elektroinstalācija
Savienošana un pareiza elektroinstalācija
Savienošana un pareiza elektroinstalācija
Savienošana un pareiza elektroinstalācija
Savienošana un pareiza elektroinstalācija
Savienošana un pareiza elektroinstalācija

Kā mēs saņēmām, iepakojums bija šāds, kā jūs varat redzēt no iepriekš redzamajiem fotoattēliem. Jūs varat izmantot džemperu vadus, lai to savienotu ar Arduino plāksni, bet es ieteiktu vadus pielodēt, jo tas darbojas ar ļoti mazu spriegumu, tāpēc jebkura neliela kustība var sabojāt rezultātus.

Iepriekš redzamajos fotoattēlos ir redzams, kā mēs pielodējām sensora vadus. Mūsu projektam mēs izmantojām Arduino Nano, un, kā redzat, mēs arī esam nedaudz pārveidojuši savu Arduino, lai iegūtu optimālus rezultātus no mūsu mērījumiem.

3. darbība. Lietošanas veids

Lietošanas veids
Lietošanas veids

Saskaņā ar datu lapu šo sensoru var izmantot, lai mērītu no -260 līdz 980 grādiem C ar parasto Arduino 5V barošanas avotu, vai arī varat pievienot kādu ārēju barošanas avotu, un tas dos jums iespēju mērīt līdz 1380 grādiem. Bet uzmanieties, ja termometrs atdod Arduino vairāk nekā 5 V, lai to nolasītu, tas var sabojāt jūsu Arduino un jūsu projekts var būt lemts neveiksmei.

Lai pārvarētu šo problēmu, mēs ierīcē ievietojam sprieguma dalītāju, kas mūsu gadījumā ir Vout līdz pusei Vin sprieguma.

Saites uz datu lapu:

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

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

4. darbība. Lielā koda problēma mērīšanas laikā

Lielā problēma ar kodu mērīšanas laikā
Lielā problēma ar kodu mērīšanas laikā

Saskaņā ar termometra datu lapu atsauces spriegums ir 1,25 V. Mūsu mērījumos tas tā nebija … Turpmāk pārbaudot, mēs uzzinājām, ka atsauces spriegums ir mainīgs, un mēs pārbaudījām divos datoros, abos gadījumos tas bija atšķirīgs (!?!). Mēs uzliekam tapu uz tāfeles (kā parādīts attēlā iepriekš) un kodā ievietojam līniju, lai katru reizi pirms aprēķināšanas izlasītu atsauces sprieguma vērtību.

Galvenā formula tam ir Temp = (Vout-1,25) / 0,005.

Mūsu formulā mēs to izveidojām: Temp = (Vout-Vref) / 0.005.

5. darbība: kodeksa 1. daļa

Kodeksa 1. daļa
Kodeksa 1. daļa
Kodeksa 1. daļa
Kodeksa 1. daļa

const int AnalogPin = A0; // Analog pin uz temp readconst int AnalogPin2 = A1; // Analogā tapa, lai nolasītu referent valuefloat Temp; // Temperatūras peldēšana Vref; // Reference voltagefloat Vout; // Spriegums pēc adcfloat SenVal; // Sensora valuefloat SenVal2; // Sensora vērtība no atsauces pinvoid setup () {Serial.begin (9600); } void loop () {SenVal = analogRead (A0); // Analogā vērtība no temperatūras SenVal2 = analogRead (A1); // Analogā vērtība no atsauces pinVref = (SenVal2 *5.0) /1024,0; // Analoga pārveidošana par digitālo referenta vērtībaiVout = (SenVal * 5.0) /1024,0; // Analoga pārveidošana par ciparu temperatūras nolasīšanas spriegumam Temp = (Vout - Vref) /0,005; // Temperatūras aprēķins Serial.print ("Temperature ="); Serial.println (Temp); Serial.print ("Reference Voltage ="); Serial.println (Vref); kavēšanās (200);}

Šis kods tiek izmantots, ja izmantojat Arduino barošanu (nav ārēja barošanas avota). Tas ierobežos jūsu mērījumus līdz 980 ° C saskaņā ar datu lapu.

6. darbība: kodeksa 2. daļa

Kodeksa 2. daļa
Kodeksa 2. daļa
Kodeksa 2. daļa
Kodeksa 2. daļa

const int AnalogPin = A0; // Analog pin uz temp readconst int AnalogPin2 = A1; // Analogā tapa, no kuras mēs lasām atsauces vērtību (mums tas bija jāizdara, jo sensora atsauces vērtība ir nestabila) float Temp; // Temperatūras peldēšana Vref; // Atsauces sprieguma peldēšana Vhalf; // Spriegums uz arduino, kas lasīts pēc sadalītāja peldes Vout; // Spriegums pēc pārveidošanasfloat SenVal; // Sensor valuefloat SenVal2; // Sensora vērtība no vietas, kur iegūstam referenta vērtībuvoid setup () {Serial.begin (9600); } void loop () {SenVal = analogRead (A0); // Analogās izejas vērtībaSenVal2 = analogRead (A1); // Analogā izeja, no kuras iegūstam atsauces vērtībuVref = (SenVal2 * 5.0) /1024.0; // Analogās vērtības pārnešana no atsauces tapas uz digitālo vērtībuVhalf = (SenVal * 5.0) /1024,0 // Analoga pārveidošana par digitālo vērtībuVout = 2 * Vhalf; // Sprieguma aprēķins pēc sadalīšanas sprieguma dalītājaTemp = (Vout - Vref) /0,005; // Temperatūras formulas aprēķinsSerial.print ("Temperature ="); Serial.println (Temp); Serial.print ("Vout ="); Serial.println (Vout); Serial.print ("Reference Voltage ="); Serial.print.println (Vref); kavēšanās (100);}

Šis ir kods, ja izmantojat ārēju barošanas avotu, un šim nolūkam mēs izmantojam sprieguma dalītāju. Tāpēc mums ir vērtība "Vhalf". Mūsu izmantotais sprieguma dalītājs (skat. 3. daļu) ir uz pusi mazāks par ienākošo spriegumu (R1 ir tādas pašas omu vērtības kā R2), jo mēs izmantojām 9 V akumulatoru. Kā minēts iepriekš, jebkurš spriegums, kas pārsniedz 5 V, var sabojāt jūsu Arduino, tāpēc mēs nolēmām iegūt maksimāli 4,5 V (kas šajā gadījumā nav iespējams, jo maksimālā jaudas jauda no sensora pēc sprieguma dalītāja var būt aptuveni 3,5 V).

7. darbība: rezultāti

Rezultāti
Rezultāti
Rezultāti
Rezultāti
Rezultāti
Rezultāti
Rezultāti
Rezultāti

Kā redzat no iepriekš redzamajiem ekrānuzņēmumiem, mēs to esam pārbaudījuši un tas darbojas. Turklāt mēs esam nodrošinājuši jums oriģinālos Arduino failus.

Tas tā ir, mēs ceram, ka tas jums palīdzēs jūsu projektos.

Ieteicams: