You are on page 1of 20

JU Srednja elektrotehnička škola “Salih Salko Ćurić“ Mostar

Broj:______ Školska 2022/23

Tema: Temperaturni senzor DS18B20

MATURSKI RAD

Članovi komisije:
1. , predsjednik

2. , član

3. , član

Ocjena:

Predmetni profesor: Učenik:


Fatima Memić, prof. Aid Kurtović, IV1
Mostar, Maj 2023.
SADRŽAJ

1. Uvod .................................................................................................................... 1

2. Arduino ................................................................................................................ 2
2.1. Razvojne ploče ................................................................................................................... 2

2.2. Mikrokontroler.................................................................................................................... 3

2.3. Ulazno/Izlazni pinovi........................................................................................................... 4

3. Arduino programski jezik .................................................................................... 6


3.1. Pisanje programa za Arduino ................................................................................................ 6

3.2. Biblioteke za Arduino .......................................................................................................... 6

4. Temperaturni senzor DS18B20 ............................................................................. 7


4.1. Povezivanje Arduino Uno sa DS18B20 ................................................................................ 10

4.2. Softverska podrška za DS18B20 ......................................................................................... 11

4.3. Programiranje arduina za DS18x20 ..................................................................................... 11

4.4. Osjetljivost senzora ........................................................................................................... 14

4.5. Tačnost senzora ................................................................................................................ 16

5. Zaključak ........................................................................................................... 18

6. Literatura ............................................................................................................. 19
1. Uvod

Uređaj Arduino je mikrokontroler koji je u zadnjih nekoliko godina pronašao svoju primjenu
u raznim područjima ljudskog života, ponajviše u Internetu Stvari (engl. Internet of Things). Baš zbog
svoje prilagodljivosti, proširljivosti i programirljivosti Arduino se počeo koristiti u razne svrhe, od
pametnih kuća, daljinskih upravljača, GPS lokatora do mnogih drugih funkcija.
Arduinov hardver je daleko slabiji od hardvera prosječnog osobnog računala, pa mu je za rad potrebna
i manja količina energije. Kako je Arduino često korišten u projektima koji nemaju direktan pristup
električnoj energiji gradske mreže, on može raditi i na bateriji.
Zbog toga je važno posvetiti pažnju optimizaciji i minimalizaciji kod projektiranja sistema, kako bi
se smanjila potrošnja električne energije kao i zahtjevi na hardver. Jedan od načina na koji nam sam
Arduino omogućuje uštedu energije su njegova stanja mirovanja (engl. Sleep Modes) koja će biti
detaljnije opisana i objašnjena u nastavku ovog rada.

1
2. Arduino

Arduino je platforma otvorenog koda (engl. open-source) namijenjena za modeliranje i


izgradnju elektroničkih uređaja, koja obuhvata hardver, koji sačinjavaju same razvojne ploče s
mikrokontrolerima i dodaci koji se nazivaju štitovi (engl. shields) koji proširuju skup mogućnosti
razvojnih ploča, i softver koji uključuje programsko okruženje pod nazivom Arduino IDE te razne
programske biblioteke koje olakšavaju pisanje programskog koda u jeziku koji je vrlo sličan
programskim jezicima C i C++. Projekt Arduino je nastao 2003. godine pod nazivom Wiring kojeg
je u sklopu svog diplomskog rada razvio kolumbijski student Hernando Barragán, pod vodstvom
Massima Banzi-a i Caseya Reas-a. Wiring je zamišljen kao program za studente IDII-a (Interaction
Design Institute Ivrea) u Italiji čiji je cilj bio napraviti jeftin i jednostavan alat za razvoj raznih uređaja
koji vrše neki oblik interakcije sa okolinom pomoću senzora (engl. sensors) i drugih pokretača (engl.
actuators) kojeg bi na jednak način mogli koristiti i inženjeri i oni bez inženjerskih sposobnosti.
Umjesto da nastave rad na projektu Wiring , oni su kopirali kod iz projekta i nastavili raditi na svom
novom projektu nazvanom Arduino. Projekt je dobio ime po nazivu kafića u kojem su se često
nalazili. Prvi Arduino je proizveden 2005. godine, od strane italijanske tvrtke SmartProjects.

2.1. Razvojne ploče


Hardverski dio platforme Arduino predstavlja razvojna ploča. Sklopove od kojih se sastoji razvojna
ploča možemo vidjeti na sljedećoj slici od kojih ćemo najvažnije kratko opisati.

Slika 1: Arduino razvojna ploča

2
Razvojna ploča osim mikrokontrolera sadrži i druge sklopove kao što su sklop za programiranje
mikrokontrolera, sklop za napajanje, razne priključke i pinove i mnoge druge.

Slika 2: Nekoliko vrsta razvojnih ploča 1

2.2. Mikrokontroler

Mikrokontroleri jesu središnja komponenta svake Arduino razvojne ploče. Mikrokontroler je maleni
računar u obliku integriranog kruga koji posjeduju vlastitu memoriju, procesor, ulaze i izlaze. Ti
računari su znatno slabija od klasičnih osobnih računara. Dok se kod klasičnih računara takt procesora
kreće u redovima veličine nekoliko GHz, takt procesora mikrokontrolera se kreće od nekoliko MHz
do nekoliko desetaka MHz. Količina memorije mikrokontrolera je također mnogo manja od količine
memorije klasičnog računara te iznosi od nekoliko kB do nekoliko desetaka kB. Iz gore navedenih
karakteristika proizlazi da će i potrošnja energije mikrokontrolera biti manja od one klasičnog
računara što je jedan od razloga njihove široke upotrebe. Mikrokontrolere danas možemo pronaći
gotovo posvuda oko nas, najčešće kao dio ugradbenih računarnskih sistema, primjerice u

3
automobilima, alarmnim sistemima, pametnim kućama, bijeloj tehnici, sistemima za navodnjavanje
i slično.

Slika 3: Mikorokontroler ATmega8

2.3. Ulazno/Izlazni pinovi

Pri pokretanju Arduina svi pinovi postavljeni su kao INPUT (ulazni). Izuzetak je digitalni pin13, koji
je definiran kao OUTPUT (izlaz). Razlog tome je što Arduino pri svakom pokretanju pokreće
program bootloader.

INPUT (ulaz) je svaki pin definiran da čita ulazno stanje, npr. foto-otpornik, prekidač, potenciometar
i neki senzori. Stanje pina se određuje tako da mikrokontroler čita napon na pinu. Razlikujemo
analogni i digitalni ulaz. Analogni su, za razliku od digitalnih, spojeni na muliplekser, a svaki od njih
na A/D (analog to digital) konverter.

OUTPUT definiramo izlazne pinove, odnosno izlazni napon. Kao i kod ulaznih razlikujemo digitalne
i analogne pinove. Primjer komponenti i modula koje koristimo kao OUTPUT: LED
diode, buzzer, releji, motori i dr.

4
Slika 4: Digitalni pinovi sa oznakama

Postoje i ploče za proširenje funkcionalnosti, takozvani štitovi (engl. shield). Štitovi se spajaju na
Arduino i najčešće imaju dodatne ulazne ili izlazne priključke kojima se sklopovski dodaju nove
funkcionalnosti. S donje strane štita nalaze se nožice koje su postavljene u jednak raspored kao i
priključci na Arduino ploči, a s gornje strane štita su priključci, također u istom rasporedu. Štit se
spaja na Arduino ploču umetanjem svih njegovih nožica u odgovarajući priključak. Neke od
priključaka će štit možda „rezervirati“ za vlastitu komunikaciju s Arduinom, a ostale će „proslijediti“
na svoje priključke da se ostali uređaji mogu spojiti direktno na njega. Ovim načinom spajanja
dobivamo i mogućnost da spajamo više štitova jednog na drugi i koristima istovremeno, dokle god ti
štitovi ne koriste iste priključke ili koriste protokole koji to dopuštaju.

Slika 5: Dva štita spojena na arduino

5
3. Arduino programski jezik

Arduino programski jezik ima sintaksu i jezična pravila identična C++-u. Podržava sve glavne
funkcionalnosti koje podržavaju izvedbe C++-a za mikrokontrolere, međutim postoje dvije ključne
razlike. Prvo, jezici imaju različitu strukturu glavnog programa. C++, kao i C, ima obaveznu „main“
funkciju koja se slijedno izvršava kad program počne s radom i izvršava se dok program ne dođe do
kraja te funkcije. Arduino programi umjesto maina imaju dvije obavezne funkcije: setup i loop.
Sadržaj setup funkcije se izvršava samo jednom i to prilikom reseta ploče.
Loop funkcija će se izvršavati u petlji dokle god je ploča upaljena. Drugu ključnu razliku čine
ugrađene standardne Arduino biblioteke koje nije potrebno dodavati. Te biblioteke pružaju temeljne
funkcionalnosti za rad, pristup interfejsu, analogne priključke i slično.

3.1. Pisanje programa za Arduino

Pisanje programa se na Arduinu ne razlikuje puno od programiranja za mikrokontrolere.


Ograničavajući resurs je najčešće podatkovna memorija pa programer uvijek mora koristiti
minimalne veličine podataka koje su mu potrebne za obavljanje nekog posla. Problemu manjka
podatkovne memorije može se doskočiti korištenjem programske memorije za spremanje varijabli
čiji je sadržaj poznat pri prevođenju i neće se mijenjati. Jedna od glavnih odlika Arduino platforme
je lakoća korištenja periferije. Programski se to svodi na korištenje nekoliko jednostavnih funkcija.
Svi digitalni priključci koji se koriste se moraju postaviti ili kao ulazni ili kao izlazni priključci.
Analogni priključci mogu samo očitavati analogne signale pa su oni automatski postavljeni u ulazni
način rada. Postavljanje je potrebno izvršiti samo jednom pa se u pravilu stavljaju u setup
funkciju.Čitanje s periferije i pisanje na periferiju se nakon toga obavlja funkcijama „digitalRead“ i
„digitalWrite“ za digitalne signale te „analogRead“ i „analogWrite“ za analogne.

3.2. Biblioteke za Arduino


Biblioteke za Arduino pišu se u C-u ili C++-u. Da bi ih IDE i prevoditelj mogli uključiti u skicu,
biblioteke moraju biti smještene u jednom od foldera previđenih za to. Svaku biblioteku predstavlja
jedan folder koji nosi njeno ime, a u njemu se moraju nalaziti ime koje mora završavati sa „ .cpp “ ili
„ .h “.

6
Slika 6: Primjer dodavanja biblioteka

4. Temperaturni senzor DS18B20


Opće karakteristike:
DS18B20 je digitalni termometar koji na izlazu daje 9-12 bitni zapis o temperaturi u celzijusima.
Ovaj termometar koristi jednožičnu komunikaciju tj. OneWire protokol (OneWire Bus). To znači da
mu je potrebna samo jedna žica, odnosno samo jedan digitalni ulaz da bi ostvario komunikaciju sa
mikrokontrolerom. Pored žice za prenos podataka potrebne su još dvije i to jedna za uzemljenje GND
i jedna za napajanje od +5V. Izgled senzora je kao na slici:

Slika 7: Izgled senzora DS18B20

7
Pored standardnog napajanja, može se ostvariti i parazitno napajanje. U tom slučaju se linija za
napajanje kratko spaja sa linijom za uzemljenje, a signalna linija se razdvaja na ulazni pin
mikrokontrolera i preko otpornika na napajanje od 5V. Iako je jako dobra osobina ovog pretvarača
da ima samo tri žice sa ovim se postiže povezivanje samo preko dvije žice. Ovaj metod je opravdan
ukoliko koristimo udaljene senzore, ali i kada ima veći broj senzora. Još jedna izvrsna karakteristika
ovog senzora je ta što je moguće povezivanje više senzora (11 najviše) na jedan pin. Dakle pomoću
parazitnog napajanja dovodi se napajanje na sve senzore i koristi se samo jedna signalna linija a time
i jedan pin na mikrokontroleru. Ovo je omogućeno činjenicom da se svaki DS adresira, odnosno da
unutar 64 bitnog izlaza kojeg šalje postoji njegova adresa. Mikrokontrolerom ispitujemo ulaze,
pregledamo adrese sa kojih su poslati te ih na taj način odvojeno tretiramo kao što će biti pokazano u
primjeru. Ovaj senzor može da mjeri temperaturu u opsegu od - 55 C do 125 C sa tačnošću od 0.5 C
na intervalu od -5 C do 95 C a to znači da postiže najveću tačnost na temperaturama od oko 30 C-40
C. Ono što je još potrebno navesti je da se preciznost senzora mijenja sa brojem bita kojeg koristimo
za zapisivanje temperature. Tako za 9 bita odgovara preciznost od 0.5 C, za 10 bita to je 0.25 C, za
11 bita je 0.125 C i za 12 bita imamo 0.0625 C.

Blok šema i princip rada Iako ima dimenzije reda 1 cm, ovaj senzor, odnosno mjerni pretvarač ima
jako složenu strukturu. Blok dijagram unutrašnje strukture je:

Slika 8: Blok dijagram senzora DS18B2

Dakle vidimo da postoji primarni osjetilni element, odnosno senzor koji mjeri temperaturu i čiji se
izlaz uspoređuje sa 3 već denisanim stanjima u registrima. Na osnovu toga određuje se temperatura

8
tj. zapisuje se odgovarajućim bitima. Look-up tabela za zapisivanje temperature u DS18B20 je:

TEMPERATURA(°C) DIGITAL OUTPUT (BINARY) DIGITAL OUTPUT (HEX)

+125 0000 0111 1101 0000 07D0h


+85 0000 0101 0101 0000 0550h
+25.0625 0000 0001 1001 0001 0191h
+10.125 0000 0000 1010 0010 00A2h
+0.5 0000 0000 0000 1000 0008h
0 0000 0000 0000 0000 0000h
-0.5 1111 1111 1111 1000 FFF8h
-10.125 1111 1111 0101 1110 FF5Eh
-25.0625 1111 1110 0110 1111 FE6fh
-55 1111 1100 1001 0000 FC90h

Tabela 1: Temperaturno binarna tabela

Zapisi o temperaturi se zajedno sa ostalim podacima zapisuju u memoriju ovog uređaja koja je
denisana prema tabeli:

Slika 9: Memorija senzora DS18B20

Kako je ranije naglašeno, preciznost mjerenja ovisi o broju bita određenih za zapisivanje podatka o
temperaturi. Pored toga, od ovog parametra ovisi i vrijeme konverzije, odnosno vrijeme koje je
potrebno da se podatak o temperaturi pretvori u digitalni zapis. Stoga, što je uređaj precizniji potrebno
mu je više vremena, odnosno najveće brzine se postižu za 9 bitni zapis temperature:

9
REZOLUCIJA(BITS) MAX CONVERSION TIME
9 93.75ms (tconv/8)
10 187.5ms (tconv/4)
11 375ms (tconv/2)
12 750ms (tconv)

Tabela 2: Rezolucija senzora DS18B20

Zapis iz memorije se šalje u mikrokontroler, tako što tzv. CRC generator proizvodi signal
ekvivalentan datom zapisu. Ovaj generator proizvodi signal po polinomskoj funkciji, a koji je
kompatibilan sa TTL logikom (jer ima 5 V na raspolaganju).

4.1. Povezivanje Arduino Uno sa DS18B20

Kao što je već spomenuto DS18B20 senzor ima tri žice: signalnu DQ, uzemljenje GND i napojnu
+5V (VCC). U slučaju parazitnog povezivanja koristimo samo dvije, ali u ovom maturskom koristimo
samo jedan senzor te stoga nije potrebno takvo uključivanje. Na arduino ploči smo vidjeli da postoje
pinovi za uzemljenje GND i napajanje koje nama treba tj. 5 V. Signalnu liniju uključujemo u digitalni
pin broj 2 (može i neki drugi), osim prva dva označenih sa 0 i 1 odnosno Rx i Tx jer oni služe za
serijsku komunikaciju a mi koristimo One Wire (jednožičnu) komunikaciju.
Za korištenje ovog pina potrebno ga je proglasiti ulaznim, što ćemo u kodu uraditi. Još jedna
neizostavna stvar je otpornik od oko 5 kΩ kojem je najbliži 4.7 kΩ. Ovaj otpornik se priključuje
između signalne linije i linije za napajanje.

Slika 10: Shema spoja DS18S20

10
4.2. Softverska podrška za DS18B20
Nakon povezivanja senzora sa arduinom, za programiranje arduina potrebni su nam paketi odnosno
biblioteke koje omogućavaju ispravno učitavanje. U opisu senzora vidjeli smo look-up tabelu,
odnosno ekvivalent temperature i odgovarajućeg zapisa. Kako to ne bi unosili samostalno postoje
denisane biblioteke koje je napisao proizvođač. Ta biblioteka se naziva DallasTemperature biblioteka.
Druga biblioteka potrebna za ovaj projekat je OneWire koja služi za ispravnu komunikaciju pomoću
One Wire protokola.

4.3. Programiranje arduina za DS18x20


Da bi sklop kojeg smo spojili funkcionisao u predhodno instalirani Arduino IDE upisujemo sljedeći
kod:
#include < OneWire.h > for(i = 0;i < 8;i + +){
OneWireds(2); Serial.write();
voidsetup(void){ Serial.print(addr[i], HEX);
Serial.begin(9600); }
} if(OneW ire :: crc8(addr, 7)! = addr[7]){
voidloop(void){ Serial.println(”CRCisnotvalid!”);
bytei; return;
bytepresent = 0; }
bytetype_s; Serial.println();
bytedata[12]; switch(addr[0]){
byteaddr[8]; case0x10 :
floatcelsius, fahrenheit; Serial.println(”Chip = DS18S20”);
if(!ds.search(addr)){ type_s = 1;
Serial.println(”Nomoreaddresses.”); break;
Serial.println(); case0x28 :
ds.resetsearch(); Serial.println(”Chip = DS18B20”);
delay(250); type_s = 0;
return; break;
} case0x22 :
Serial.print(”ROM = ”); Serial.println(”Chip = DS1822”);

11
type_s = 0; Serial.print(OneWire :: crc8(data, 8), HEX);
break; Serial.println();
def ault : int16_traw = (data[1] << 8)|data[0];
Serial.println(”DeviceisnotaDS18x20familyde if(type_s){
vice.”); raw = raw << 3;
return; if(data[7] == 0x10){
} raw = (raw&0xF F F0) + 12 − data[6];
ds.reset(); }
ds.select(addr); }else{
ds.write(0x44); bytecfg = (data[4]&0x60);
delay(1000); if(cfg == 0x00)raw = raw&7;
present = ds.reset(); elseif(cfg == 0x20)raw = raw&3;
ds.select(addr); elseif(cfg == 0x40)raw = raw&1;
ds.write(0xBE); }
Serial.print(”Data = ”); celsius = (float)raw/16.0;
Serial.print(present, HEX); f ahrenheit = celsius ∗ 1.8 + 32.0;
Serial.print(””); Serial.print(”Temperature = ”);
for(i = 0;i < 9;i + +){ Serial.print(celsius);
data[i] = ds.read(); Serial.print(”Celsius, ”);
Serial.print(data[i], HEX); Serial.print(fahrenheit);
Serial.print(””); Serial.println(”Fahrenheit”);
} }
Serial.print(”CRC = ”);

Ako posmatramo ovaj kod primijetimo u redu 2 da je definisan ulazni pin kojeg smo koristili, stoga
ako se koristi neki drugi pin potrebno je navesti. U sljedećem redu je navedena količina podataka
koja se prenosi serijskom komunikacijom računara i arduina. U sljedećem dijelu koda ispituje se vrsta
senzora iz DS serije, što znači da se ovaj kod može koristiti i za druge senzore pored DS18B20 kojeg
mi koristimo. Sa funkcijom ds.write(0x44) navodimo adresu DS senzora a ukoliko koristimo
parazitno napajanje (i više senzora) potrebno je navesti i broj senzora sa kojeg se očitava pa bi se ova
linija zamijenila sa ds.write(0x44,1) u slučaju jednog senzora ali parazitnog napajanja. Funkcija
delay(1000); omogućava uzimanje podatka svakih 1000 ms, s obzirom da koristimo 12 bita dovoljno

13
bi bilo i 750 ms ali na ovaj način smo sigurni da neće doći do greške pri uzimanju podataka. Nakon
toga se vrši učitavanje i pretvaranje temperature koju dobijemo u celzijusima u faranhajte, što nije
obavezno. Nakon ovoga možemo preći na mjerenje temperature.

4.4. Osjetljivost senzora


Osjetljivost senzora se deniše kao najmanja promjena mjerene veličine koju on mjeri. U ovom
maturskom radu nećemo raditi precizna labaratorijska mjerenja, ali ćemo na primjeru mjerenja sobne
temperature i promjena koje mogu nastati vidjeti ponašanje senzora. Dakle prema navedenom
postupku pokrenemo mjerenje i dobivamo ispis:

Slika 11: Izgled Serial Monitora

Na ovoj slici vidimo trenutnu sobnu temperaturu na kojoj je vršeno mjerenje, te vidimo da bez
promjena položaja ili kakvog strujanja zraka temperatura je prilično konstantna. Ukoliko počnemo
lagano puhati u senzor, pošto je temperatura ljudskog tijela veća od sobne očekujemo porast
temperature:

14
Slika 12: Izgled Serial Monitora

Na ovoj slici se upravo vidi povećanje temperature prouzrokovano puhanjem u senzor. To ide u prilog
osjetljivosti ovog senzora, puhanje je kratkotrajno i nema ogromnu razliku temperature ali to ovaj
senzor uspješno prati. Također znamo da temperatura u cijeloj prostoji nije ista, pa ćemo sada
provjeriti promjenu temperature sa pomjeranjem senzora nekoliko centrimetara prema podu gdje
očekujemo nižu temperaturu:

Slika 13: Izgled Serial Monitora

Iz ovih jednostavnih testova vidimo da je ovakav senzor idealan za praćenje brzih i malih promjena
temperature i da mu je to velika prednost u odnosu na ostale senzore. Naime, ovaj senzor je sposoban
da registruje promjenu od 0.06C unutar 0.75 sekundi.

15
4.5. Tačnost senzora
Tačnost senzora se deniše kao mogućnost pokazivanja tačne temperature. Pri proizvodnji senzora,
proizvođač kalibriše senzor, te daje njegov mjerni opseg kao i tačnost u tom mjernom opsegu. Da bi
se provjerila ispravnost dobivenih podataka, kao i izvršilo ponovno kalibrisanje postoje posebni
instituti na državnom nivou koji pomoću etalonskihinstrumenata vrše mjerenja i određuju tačnost
drugog instrumenta. Međutim da li je tačnost onakva kakvu proizvođač deniše možemo jednostavno
provjeriti i svakodnevnim prirodnim fenomenima. Jedan od fenomena kojeg možemo iskoristiti za
provjeru tačnosti je ključanje i mržnjenje vode. U ovom maturskom radu je senzor postavljen u
električno kuhalo, iznad površine vode tako da mjeri temperaturu pare. Razlog zbog kojeg senzor
nismo ubacili u samu tečnost je jer nema adekvatnu zaštitu i može doći do njegovog oštećenja.
Rezultati dobiveni ovim mjerenjem su:

Slika 14: Izgled Serial Monitora

Vidimo da je pokazivanje senzora 99.5 C, što je u granicama tačnosti denisane od strane proizvođača.
U obzir se može uzeti činjenica da senzor nije uronjen u tečnost nego mjeri temperaturu pare a čija
se temperatura smanji pri napuštanju tečnosti i dizanjem u vazduh. Međutim ovaj pad temperature je
manji od 0.1 C pa ga možemo i zanemariti. Drugi fenomen kojeg možemo iskorisiti za provjeru
tačnosti je tačka mrženjenja vode, odnosno tačka topljenja leda. Prije ove vježbe u jednu posudu je
nasuta voda koja je držana u hladnjaku tako da se smrzne i da možemo izmjeriti temperaturu vode
koja nastane kada se led otopi. Dobiveni su sljedeći rezultati:

16
Slika 15: Izgled Serial Monitora

Dobivene vrijednosti od 0.94 C mogu biti posljedica više stvari: na senzor smo postavili tanku foliju
tako da voda ne bi došla do njega, led je izvađen iz hladnjaka i njegovo topljenje je bilo na sobnoj
temperaturi koja također ima uticaj kao i greška samog senzora.

17
5. Zaključak

DS18B20 je senzor, odnosno mjerni pretvarač koji temperaturu pretvara u digitalni zapis. To je
ujedno jedna od njegovih glavnih prednosti, jer se sa lakoćom može povezivati sa mikrokontrolerima,
mikroprocesorima, računarima i slično. Druga dobra osobina je što mu je potrebna samo jedna žica
za komunikaciju tj. služi se One-Wire protokolom pa dolazi i do uštede materijala i prostora. Također
prednost ovog protokola i senzora je njegovo adresiranje pa se pomoću jedne žice može povezati više
senzora a samim time im je potreban i samo jedan ulaz. Pored tih konstruktivnih karakteristika, ovaj
senzor ima jako dobru tačnost koja ga svrstava u najuži krug pri izboru senzora za mjerenje. Druga
osobina zbog koje ovaj senzor ima veliku upotrebu je njegova niska cijena. Ovaj senzor ima relativno
malen mjerni opseg pa ima malu upotrebu u industrijskim mjerenjima visokih temperatura, međutim
zbog svojih karakteristika je na prvom mjestu na niskim temperaturama odnosno u opsegu od 10-100
C. Dobre karakteristike su velika tačnosti i osjetljivost, kao i brzina odziva. Ovaj senzor mjeri
temperaturu unutar 750 ms sa preciznošću od 0.06 C i definisanom tačnosti od 0.5 C. S obzirom na
ove osobine i jako malu cijenu, ovaj senzor je idealan za mjerenje temperature u prostim sistemima
gdje je potrebna velika tačnost i pouzdanost pri mjerenju i regulaciji temperature. U prilog tome ide
i osjetljivost i brzina odziva, tako da je idealan za regulaciju temperature u dinamičkim sistemima, sa
malim opsegom promjena temperatura kao što su inkubatori.

18
6. Literatura

[1]. Arduino datasheet, dostupno: https://docs.arduino.cc/resources/datasheets/A000066-


datasheet.pdf, prstupljeno: Mart,2022.
[2]. Arduino, dostupno: https://hr.wikipedia.org/wiki/Arduino, prstupljeno: Mart,2022.
[3]. Arduino kroz jednostavne primjere Paolo Zenzerović, Zagreb 2014
[4]. Arduino tutorial, dostupno https://lastminuteengineers.com/ds18b20-arduino-tutorial/,
prstupljeno: Mart,2022.
[5]. Temperaturni senzor DS18B20,
dostupno http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf, prstupljeno: Mart,2022.
[6]. DS18B20 digital temperature sensor TO92-55 ° C - +125 ° C, AZ-Delivery e-Books

19

You might also like