Technológia snímača teploty

Vlastná senzorová sonda DS18B20 & 1-Zostava drôteného kábla

DS18B20 snímač teploty 1-žilový vodotesný kábel + sada adaptérových dosiek

Ponúkame širokú škálu najlepších 1-Wire DS18B20 senzorových konektorov, vrátane Nanoflexu, DisplayPort, USB, Solárne, SATA, HDMI, TO JE NÁPAD, SAV & mnoho ďalších. Všetky káble sú vyrábané podľa najvyšších priemyselných štandardov. Použitie zostavy obvodov snímača na zostavenie škatúľ vám umožní zamerať sa na váš dizajn a marketing, znížiť náklady, a využívať výhody našich montážnych liniek, procesy QA, a výrobná odbornosť.

Senzor DS18B20 komunikuje pomocou “1-Drôt” protokol, čo znamená, že používa jedinú dátovú linku na všetku komunikáciu s mikrokontrolérom, umožňuje pripojenie viacerých senzorov na rovnakú linku a ich identifikáciu podľa ich jedinečného 64-bitového sériového kódu; táto jediná dátová linka je vytiahnutá vysoko pomocou rezistora a snímač prenáša dáta tak, že v určitých časových intervaloch potiahne linku nízko, aby poslal bity informácií.

Snímač teploty DS18B20: Vodotesná sonda DS18B20 je určená na použitie pod vodou, schopné prevádzky vo vlhkom alebo vlhkom prostredí bez poškodenia vodou alebo vlhkosťou.
Napájacie napätie snímača teploty: 3.0V ~ 5,25 V;
Rozsah prevádzkových teplôt:-55 ℃ až +125 ℃ (-67 ℉ do +257 ℉);
Poskytuje 9-bitové až 12-bitové meranie teploty v stupňoch Celzia;
Adaptérový modul je vybavený pull-up rezistorom, a priamo sa pripája k GPIO Raspberry Pi bez externého odporu;
Použite túto súpravu adaptérového modulu na zjednodušenie pripojenia vodotesného snímača teploty k vášmu projektu.

Digitálny snímač teploty DS18B20 & Modul XH2.54 až PH2.0

Digitálny snímač teploty DS18B20 & Modul XH2.54 až PH2.0

Snímač teploty TO-92 čipu DS18B20 vyrobený v Číne

Snímač teploty TO-92 čipu DS18B20 vyrobený v Číne

DS18B20 snímač teploty 1-žilový vodotesný kábel + sada adaptérových dosiek

DS18B20 snímač teploty 1-žilový vodotesný kábel + sada adaptérových dosiek

1. Kľúčové body protokolu 1-Wire:
Jedna dátová linka:
Na komunikáciu medzi snímačom a mikrokontrolérom je potrebný iba jeden vodič.
Poloduplexná komunikácia:
Dáta je možné posielať oboma smermi, ale vždy len jedným smerom.
Sila parazitov:
DS18B20 môže byť počas komunikácie napájaný priamo z dátovej linky, v niektorých prípadoch eliminuje potrebu samostatného napájania.
Jedinečné adresy zariadení:
Každý snímač DS18B20 má jedinečný 64-bitový sériový kód, ktorý umožňuje mikrokontroléru identifikovať a adresovať jednotlivé snímače na zbernici.
Komunikačné kroky s DS18B20:
1.1 Resetovať pulz:
Mikrokontrolér zaháji komunikáciu stiahnutím dátovej linky na určitú dobu (resetovať pulz).
1.2 Pulz prítomnosti:
Ak je na zbernici prítomný DS18B20, bude reagovať krátkym pulzom, čo naznačuje jeho prítomnosť.
1.3 príkaz ROM:
Mikrokontrolér odošle príkaz ROM, aby buď prečítal jedinečný 64-bitový kód konkrétneho senzora (“Zápas ROM”) alebo adresovať všetky snímače na zbernici (“Preskočiť ROM”).
1.4 Príkaz funkcie:
V závislosti od požadovanej operácie (ako čítanie teploty), mikrokontrolér odošle do snímača špecifický funkčný príkaz.
1.5 Prenos dát:
Dáta sa prenášajú bit po bite, so snímačom stiahnutím dátového vedenia nízko na odoslanie a ‘0’ a nechať čiaru ísť vysoko, aby sa poslala „1“.

2. Podrobné vysvetlenie 1-Wire komunikačného protokolu DS18B20
Dôvod, prečo sú snímače DS18B20 široko používané, je do značnej miery spôsobený ich jedinečným komunikačným protokolom – 1-Drôtový komunikačný protokol. Tento protokol zjednodušuje požiadavky na hardvérové ​​pripojenia a poskytuje efektívny spôsob prenosu údajov. Táto kapitola podrobne analyzuje pracovný mechanizmus a proces výmeny údajov 1-riadkového komunikačného protokolu s cieľom položiť pevný základ pre následnú programovaciu prax..
2.1 Základy 1-Wire komunikačného protokolu
2.1.1 Vlastnosti 1-Wire komunikačného protokolu:
Nazýva sa aj 1-Wire Communication Protocol DS18B20 “jediný autobus” technológie. Má nasledujúce vlastnosti: – Komunikácia po jednej zbernici: Na obojsmerný prenos dát sa používa iba jedna dátová linka, čo výrazne znižuje zložitosť zapojenia v porovnaní s tradičnou viacvodičovou komunikačnou metódou snímača. – Pripojenie viacerých zariadení: Podporuje pripojenie viacerých zariadení na jednu dátovú zbernicu, a identifikuje a komunikuje prostredníctvom identifikačných kódov zariadenia. – Nízka spotreba energie: Počas komunikácie, zariadenie môže byť v pohotovostnom režime s nízkou spotrebou energie, keď sa nezúčastňuje komunikácie. – Vysoká presnosť: S kratším časom prenosu dát, môže znížiť vonkajšie rušenie a zlepšiť presnosť údajov.
2.1.2 Formát dát a časová analýza 1-wire komunikácie
Formát údajov 1-wire komunikačného protokolu sa riadi špecifickým pravidlom časovania. Zahŕňa časovanie inicializácie, čas zápisu a čas čítania:
Načasovanie inicializácie: Hostiteľ najskôr spustí časovanie detekcie prítomnosti (Pulz prítomnosti) potiahnutím autobusu na určitý čas, a senzor potom odošle impulz prítomnosti ako odpoveď.
Napíšte načasovanie: Keď hostiteľ odošle čas zápisu, najprv stiahne autobus na cca 1-15 mikrosekúnd, potom autobus uvoľní, a senzor stiahne autobus 60-120 mikrosekúnd na odpoveď.
Prečítajte si časovanie: Hostiteľ upozorní snímač, aby odoslal údaje, stiahnutím zbernice a jej uvoľnením, a snímač odošle dátový bit na zbernicu po určitom oneskorení.

Analógové zariadenia DS18B20+, 1-Wire digitálny teplomer s programovateľným rozlíšením MAXIM

Analógové zariadenia DS18B20+, 1-Wire digitálny teplomer s programovateľným rozlíšením MAXIM

DS18B20 12-bitový 1-drôtový digitálny snímač teploty s 1 Merací kábel

DS18B20 12-bitový 1-drôtový digitálny snímač teploty s 1 Merací kábel

Senzorová sonda DS18B20 určená na zber teploty a vlhkosti v chladiarenských skladoch

Senzorová sonda DS18B20 určená na zber teploty a vlhkosti v chladiarenských skladoch

2.2 Softvérová implementácia dátovej komunikácie
2.2.1 Inicializácia a reset 1-linkovej komunikácie
Na úrovni softvéru, inicializácia a reset 1-Wire komunikácie je prvým krokom komunikácie. Nasleduje pseudokód na implementáciu tohto procesu:

// Funkcia inicializácie komunikácie OneWire
zrušiť OneWire_Init() {
// Nastavte zbernicu na vstupný režim a aktivujte pull-up rezistor
SetPinMode(DS18B20_PIN, INPUT_PULLUP);
// Počkajte, kým bude autobus nečinný
OneskorenieMikrosekundy(1);
// Pošlite resetovací impulz
OneWire_Reset();
}

// Funkcia resetovania komunikácie OneWire
void OneWire_Reset() {
// Stiahnite autobus
SetPinMode(DS18B20_PIN, OUTPUT_LOW);
OneskorenieMikrosekundy(480);
// Uvoľnite autobus
SetPinMode(DS18B20_PIN, INPUT_PULLUP);
OneskorenieMikrosekundy(70);
// Počkajte na prítomnosť pulzu
ak (!WaitForOneWirePresence())
// Nebol zistený žiadny pulz, možno snímač nie je pripojený alebo inicializácia zlyhala
HandleError();
OneskorenieMikrosekundy(410);
}

// Čakanie na prítomnosť pulzu
bool WaitForOneWirePresence() {
vrátiť ReadPin(DS18B20_PIN) == 0; // Predpokladajme, že nízka úroveň je prítomnosť signálu
}

2.2.2 Operácie čítania a zápisu údajov

Operácie čítania a zápisu údajov sú základnou súčasťou komunikácie senzorov. Nasledujúci kód ukazuje, ako zapísať bajt do jednodrôtovej zbernice:
// Zapíšte bajt do jednodrôtovej zbernice
void OneWire_WriteByte(bajtové dáta) {
pre (int i = 0; i < 8; i++) {
OneWire_WriteBit(údajov & 0x01);
údajov >>= 1;
}
}

// Napíšte kúsok do jednodrôtovej zbernice
void OneWire_WriteBit(bitové dáta) {
SetPinMode(DS18B20_PIN, OUTPUT_LOW);
ak (údajov) {
// Pri písaní uvoľnite zbernicu 1
SetPinMode(DS18B20_PIN, INPUT_PULLUP);
OneskorenieMikrosekundy(1);
} inak {
// Pri písaní pokračujte v ťahaní zbernice nízko 0
OneskorenieMikrosekundy(60);
}
SetPinMode(DS18B20_PIN, INPUT_PULLUP);
OneskorenieMikrosekundy(1);
}

Ďalej je funkcia na čítanie bajtu:
// Prečítajte si bajt z jednodrôtovej zbernice
byte OneWire_ReadByte() {
bajtové údaje = 0;
pre (int i = 0; i < 8; i++) {
údajov >>= 1;
ak (OneWire_ReadBit())
údajov |= 0x80;
}
vrátiť údaje;
}

// Prečítajte si kúsok z jednodrôtovej zbernice
bit OneWire_ReadBit() {
SetPinMode(DS18B20_PIN, OUTPUT_LOW);
SetPinMode(DS18B20_PIN, INPUT_PULLUP);
OneskorenieMikrosekundy(3);
bool výsledok = ReadPin(DS18B20_PIN);
OneskorenieMikrosekundy(57);
vrátiť výsledok;
}

2.2.3 Overovací mechanizmus komunikácie OneWire

Komunikačný protokol OneWire využíva v procese výmeny údajov jednoduchý overovací mechanizmus, zvyčajne spätným prečítaním zapísaných údajov na overenie správnosti údajov. Nasleduje vzorový kód na overenie zapísaných údajov:

bajtové údaje = 0x55; // Predpokladajme, že údaje, ktoré sa majú odoslať

OneWire_WriteByte(údajov); // Zapisujte údaje na zbernicu OneWire

byte readData = OneWire_ReadByte(); // Spätné čítanie údajov zo zbernice OneWire

ak (readData != údaje) {
HandleError(); // Ak sa načítané údaje nezhodujú so zapísanými údajmi, zvládnuť chybu