Tehnologija senzora temperature

Prilagođena sonda senzora DS18B20 & 1-Sklop žice kabela

DS18B20 senzor temperature 1-žilni vodootporni kabel + set adapterskih ploča

Nudimo širok raspon najboljih 1-Wire DS18B20 senzorskih konektora, uključujući Nanoflex, DisplayPort, USB, Solarni, SATA, HDMI, TO JE IDEJA, SAS & mnogo više. Svi kabeli proizvedeni su prema najvišim industrijskim standardima. Korištenje sklopa senzorskog kruga za izradu kutija omogućuje vam da se usredotočite na dizajn i marketing, smanjiti troškove, i iskoristiti prednosti naših montažnih linija, QA procesi, i stručnost u proizvodnji.

Senzor DS18B20 komunicira pomoću “1-Žica” protokol, što znači da koristi jednu podatkovnu liniju za svu komunikaciju s mikrokontrolerom, što omogućuje povezivanje više senzora na istu liniju i identificiranje njihovim jedinstvenim 64-bitnim serijskim kodom; ova jedina podatkovna linija se povlači visoko pomoću otpornika i senzor prenosi podatke povlačenjem linije nisko tijekom određenih vremenskih odsječaka za slanje bitova informacija.

DS18B20 senzor temperature: Vodootporna sonda DS18B20 dizajnirana je za podvodnu upotrebu, sposoban za rad u mokrom ili vlažnom okruženju bez oštećenja vodom ili vlagom.
Napon napajanja senzora temperature: 3.0V ~ 5,25 V;
Raspon radne temperature:-55 ℃ +125 ℃ (-67 ℉ do +257 ℉);
Omogućuje mjerenje temperature od 9-bita do 12-bita Celzija;
Adapterski modul opremljen je pull-up otpornikom, i izravno se spaja na GPIO Raspberry Pi bez vanjskog otpornika;
Upotrijebite ovaj komplet adapterskog modula za pojednostavljenje povezivanja vodootpornog temperaturnog senzora s vašim projektom.

DS18B20 digitalna sonda senzora temperature & XH2.54 do PH2.0 modul

DS18B20 digitalna sonda senzora temperature & XH2.54 do PH2.0 modul

Senzor temperature TO-92 za prikupljanje temperature DS18B20 čipa kineske proizvodnje

Senzor temperature TO-92 za prikupljanje temperature DS18B20 čipa kineske proizvodnje

DS18B20 senzor temperature 1-žilni vodootporni kabel + set adapterskih ploča

DS18B20 senzor temperature 1-žilni vodootporni kabel + set adapterskih ploča

1. Ključne točke o 1-Wire protokolu:
Jedna podatkovna linija:
Za komunikaciju između senzora i mikrokontrolera potrebna je samo jedna žica.
Half-duplex komunikacija:
Podaci se mogu slati u oba smjera, ali samo jedan po jedan smjer.
Moć parazita:
DS18B20 može se napajati izravno iz podatkovne linije tijekom komunikacije, eliminirajući potrebu za zasebnim napajanjem u nekim slučajevima.
Jedinstvene adrese uređaja:
Svaki DS18B20 senzor ima jedinstveni 64-bitni serijski kod koji omogućuje mikrokontroleru da identificira i adresira pojedinačne senzore na sabirnici.
Koraci komunikacije s DS18B20:
1.1 Reset puls:
Mikrokontroler inicira komunikaciju povlačenjem podatkovne linije nisko na određeno vrijeme (reset puls).
1.2 Puls prisutnosti:
Ako je DS18B20 prisutan na autobusu, odgovorit će kratkim pulsom, ukazujući na njegovu prisutnost.
1.3 ROM naredba:
Mikrokontroler šalje ROM naredbu za čitanje jedinstvenog 64-bitnog koda određenog senzora (“Podudaranje ROM-a”) ili za adresiranje svih senzora na sabirnici (“Preskoči ROM”).
1.4 Funkcijska naredba:
Ovisno o željenoj operaciji (poput očitavanja temperature), mikrokontroler šalje specifičnu funkcijsku naredbu senzoru.
1.5 Prijenos podataka:
Podaci se prenose bit po bit, sa senzorom koji povlači podatkovnu liniju nisko za slanje a ‘0’ i pustiti liniju visoko da pošalje '1'.

2. Detaljno objašnjenje protokola komunikacije DS18B20
Razlog zašto se senzori DS18B20 naširoko koriste uglavnom je posljedica jedinstvenog komunikacijskog protokola – 1-Protokol za žičanu komunikaciju. Ovaj protokol pojednostavljuje zahtjeve za hardverske veze i pruža učinkovit način za prijenos podataka. Ovo će poglavlje duboko analizirati radnu mehanizam i postupak razmjene podataka u 1-linijskom komunikacijskom protokolu kako bi postavio solidan temelj za naknadnu programiranje.
2.1 Osnove protokola komunikacije od 1 žice
2.1.1 Značajke protokola komunikacije od 1 žice:
DS18B20 se također naziva komunikacijski protokol “s jednim autobusom” tehnologija. Ima sljedeće značajke: – Pojedinačna komunikacija sa autobusom: Za dvosmjerni prijenos podataka koristi se samo jedna podatkovna linija, što uvelike smanjuje složenost ožičenja u usporedbi s tradicionalnom višenamjenskom metodom komunikacije senzora. – Veza s više uređaja: Podržava povezivanje više uređaja na jednoj sabirnici podataka, te identificira i komunicira putem identifikacijskih kodova uređaja. – Mala potrošnja energije: Tijekom komunikacije, Uređaj može biti u stanju pripravnosti male snage kada ne sudjeluje u komunikaciji. – Visoka preciznost: S kraćim vremenom prijenosa podataka, Može smanjiti vanjske smetnje i poboljšati točnost podataka.
2.1.2 Format podataka i vremenska analiza jednožične komunikacije
Format podataka komunikacijskog protokola od 1 žice slijedi određeno pravilo vremena. Uključuje vrijeme inicijalizacije, napisati vrijeme i čitati vrijeme:
Inicijalizacija vremena: Domaćin prvo započinje vrijeme otkrivanja prisutnosti (Impuls) povlačenjem autobusa određeno vrijeme, a senzor tada šalje puls prisutnosti u odgovoru.
Pisati vrijeme: Kad domaćin pošalje vrijeme pisanja, Prvo se povuče u autobus za otprilike 1-15 mikrosekundi, zatim pušta autobus, I senzor se spušta niz autobus 60-120 Mikrosekundi za reagiranje.
Pročitajte vrijeme: Domaćin obavještava senzor za slanje podataka povlačenjem sabirnice i puštanjem, a senzor će nakon određenog kašnjenja iznijeti bit podataka na sabirnici.

Analog Devices DS18B20+, MAXIM 1-žični digitalni termometar programibilne rezolucije

Analog Devices DS18B20+, MAXIM 1-žični digitalni termometar programibilne rezolucije

DS18B20 12-bitni 1-žični digitalni senzor temperature s 1 Kabel za mjerenje

DS18B20 12-bitni 1-žični digitalni senzor temperature s 1 Kabel za mjerenje

Senzorska sonda DS18B20 namijenjena prikupljanju temperature i vlage u hladnom lancu hladnjača

Senzorska sonda DS18B20 namijenjena prikupljanju temperature i vlage u hladnom lancu hladnjača

2.2 Programska implementacija podatkovne komunikacije
2.2.1 Inicijalizacija i resetiranje 1-linijske komunikacije
Na razini softvera, inicijalizacija i resetiranje 1-Wire komunikacije je prvi korak komunikacije. Slijedi pseudo kod za implementaciju ovog procesa:

// OneWire funkcija inicijalizacije komunikacije
void OneWire_Init() {
// Postavite sabirnicu na način unosa i omogućite otpornik za privlačenje
PostaviPinMode(DS18B20_PIN, INPUT_PULLUP);
// Pričekajte da autobus miruje
Kašnjenje u mikrosekundama(1);
// Pošaljite impuls resetiranja
OneWire_Reset();
}

// OneWire funkcija resetiranja komunikacije
void OneWire_Reset() {
// Zaustavite autobus
PostaviPinMode(DS18B20_PIN, OUTPUT_LOW);
Kašnjenje u mikrosekundama(480);
// Pusti autobus
PostaviPinMode(DS18B20_PIN, INPUT_PULLUP);
Kašnjenje u mikrosekundama(70);
// Pričekajte prisutnost pulsa
ako (!WaitForOneWirePresence())
// Nije otkriven puls, možda senzor nije spojen ili inicijalizacija nije uspjela
HandleError();
Kašnjenje u mikrosekundama(410);
}

// Čeka se prisutnost pulsa
bool WaitForOneWirePresence() {
vratiti ReadPin(DS18B20_PIN) == 0; // Pretpostavimo da je niska razina prisutnost signala
}

2.2.2 Operacije čitanja i pisanja podataka

Operacije čitanja i pisanja podataka ključni su dio komunikacije senzora. Sljedeći kod pokazuje kako napisati bajt u jednožičnu sabirnicu:
// Upiši bajt u jednožičnu sabirnicu
void OneWire_WriteByte(bajt podataka) {
za (int i = 0; ja < 8; i++) {
OneWire_WriteBit(podaci & 0x01);
podaci >>= 1;
}
}

// Napiši malo na jednožičnu sabirnicu
void OneWire_WriteBit(bit podataka) {
PostaviPinMode(DS18B20_PIN, OUTPUT_LOW);
ako (podaci) {
// Otpustite autobus kada pišete 1
PostaviPinMode(DS18B20_PIN, INPUT_PULLUP);
Kašnjenje u mikrosekundama(1);
} drugo {
// Nastavite spuštati sabirnicu dok pišete 0
Kašnjenje u mikrosekundama(60);
}
PostaviPinMode(DS18B20_PIN, INPUT_PULLUP);
Kašnjenje u mikrosekundama(1);
}

Sljedeća je funkcija za čitanje bajta:
// Pročitajte bajt iz jednožilne sabirnice
bajt OneWire_ReadByte() {
bajt podataka = 0;
za (int i = 0; ja < 8; i++) {
podaci >>= 1;
ako (OneWire_ReadBit())
podaci |= 0x80;
}
vratiti podatke;
}

// Čitaj malo iz jednožične sabirnice
bit OneWire_ReadBit() {
PostaviPinMode(DS18B20_PIN, OUTPUT_LOW);
PostaviPinMode(DS18B20_PIN, INPUT_PULLUP);
Kašnjenje u mikrosekundama(3);
bool rezultat = ReadPin(DS18B20_PIN);
Kašnjenje u mikrosekundama(57);
vratiti rezultat;
}

2.2.3 Mehanizam provjere OneWire komunikacije

OneWire komunikacijski protokol koristi jednostavan mehanizam provjere u procesu razmjene podataka, obično čitanjem zapisanih podataka kako bi se provjerila točnost podataka. Slijedi primjer koda za provjeru zapisanih podataka:

bajt podataka = 0x55; // Pretpostavimo da podaci koji se šalju

OneWire_WriteByte(podaci); // Pišite podatke na OneWire sabirnicu

byte readData = OneWire_ReadByte(); // Očitajte podatke sa sabirnice OneWire

ako (readData != podaci) {
HandleError(); // Ako očitani podaci ne odgovaraju pisanim podacima, riješiti pogrešku