I2C temperaturni senzor LM75

I2C temperaturni senzor LM75

I2C temperaturni senzor LM75

LM75 I2C temperaturni senzor termometer I2C vodilo

Kazalo

    Načelo delovanja

    El IC LM75 je a silicijev polprevodniški temperaturni senzor pasovnega razmika.

    V polprevodnikih je prepovedan bend To je energijsko območje elektronov, ki ga ni mogoče povečati s povečanjem električnega polja, saj ni razpoložljivih stanj za hitrejše premikanje. to prepovedan bend je vključen med valenčni pas (nižja energija) in prevodni pas (višja energija). Toplotno vzbujanje (zvišanje temperature za namene, ki nas zanimajo) lahko povzroči, da nekateri elektroni pridobijo dovolj energije, da preidejo v prevodni pas.

    Kot je razloženo v prejšnjem članku o elektronsko merjenje temperature, v kovinah, čeprav število nosilcev ni odvisno od temperature (vsi elektroni so vedno na voljo), pa na njihovo mobilnost vpliva temperatura, tako da upor v kovinah narašča s temperaturo zaradi upadanja hitrosti elektronov zaradi povečanje njihovega toplotno mešanje in sipanje elektronov, ki jih proizvaja.

    Pri polprevodnikih zaradi prisotnosti te prepovedan bend Število nosilcev je odvisno od temperature (odvisno od Fermi–Diracova porazdelitev), zaradi česar se prevodnost povečuje s temperaturo. Pri polprevodnikih zvišanje temperature povzroči povečanje upora, vendar povzroči (nadaljnje) povečanje prevodnosti.

    P silicijevi polprevodniški temperaturni senzorji pasovnega razmika, tako kot v primeru LM75, delujejo po tem principu in omogočajo določitev temperature s kvantificiranjem njenega vpliva na napetost v silicijevi diodi.

    Komponente strojne opreme LM75

    LM75 ima tudi a analogno-digitalni pretvornik s sigma-delta modulacijo ki je odgovoren za pridobitev numerične (digitalne) vrednosti temperature, vrednosti, ki se nato shrani (vsakih 100 ms) v enega od svojih registrov, iz katerega se lahko prebere preko vodila I2C.

    Temperaturni senzor LM75 I2C. Poenostavljen diagram operacijskih blokov

    Poleg registra, ki vsebuje izmerjeno temperaturo, ima LM75 register, v katerega je mogoče shraniti najvišjo temperaturo, ter primerjalnik, ki je sposoben generirati signal, če izmerjena temperatura presega temperaturo, shranjeno v tem drugem registru. Da se opozorilo ne sproži znova, dokler izmerjena temperatura ne pade pod določeno raven, tretji register omogoča shranjevanje vrednosti za temperaturo histereza.

    Konfiguracija delovanja LM75 je shranjena v četrtem registru, s katerim se določijo pogoji, pod katerimi se generira opozorilo, način sprožitve tega opozorilnega signala (način prekinitve ali primerjalni način) kot tudi aktiviranje naprave (način). .normalno delovanje ali nizka poraba) med drugimi parametri.

    Tehnične specifikacije in izvedba LM75

    Razpon temperatur, ki jih lahko meri LM75, se giblje od −55 °C do +125 °C, numerična ločljivost pa je 0.125 °C, čeprav je natančnost le ±2 °C v najboljšem primeru, ko je temperatura med − 25 °C in +100 °C ter natančnost ±3 °C z najbolj ekstremnimi temperaturami, med −55 °C in +125 °C.

    LM75. I2C temperaturni senzor. Pinout

    Izvedba (strojna oprema) LM75 v vezju je zelo preprosta, ne potrebuje več komponent kot uporov vlečenje od avtobus I2C in se lahko napaja z napetostjo med 2,8 V in 5,5 V. V istem avtobus I2C Do osem termometrov LM75 je mogoče urediti s konfiguracijo njihovega naslova s ​​tremi nožicami A0, A1 in A2 na visoki ali nizki ravni, kot je običajno v teh primerih.

    LM75. I2C temperaturni senzor. Aplikacijsko vezje

    Po drugi strani pa je uporaba LM75 kot sonde neprijetna zaradi paketov, v katerih je predstavljen, TSSOP (TSSOP8) o SEC (SO8) in se običajno uporablja za merjenje temperature okolice ali za merjenje temperature komponent, nameščenih v okolju PCB v kateri se nahaja termometer LM75.

    Ob zagonu je LM75 konfiguriran tako, da zazna najvišjo temperaturo +80 °C, temperaturo histereza +75 °C in primerjalni način delovanja, torej način, ki posnema delovanje termostata: aktivira opozorilo, ko je dosežena najvišja temperatura in le, če ta pade pod histereza Ponovno ustvari obvestilo.

    Izkoriščanje LM75 iz mikrokontrolerja preko vodila I2C

    Zahvaljujoč uporabi avtobus I2C Delovanje LM75 je zelo preprosto, samo dostopajte do naslova, ki ga zaseda na vodilu, da shranite ali preberete konfiguracijo in pridobite vrednost izmerjene temperature.

    Naslov I2C osnova LM75 je 0B01001XXX in je dopolnjena, kot je pojasnjeno zgoraj, z zadnjimi tremi naslovnimi biti, ki jih nastavi strojna oprema z nožicami A0, A1 in A2 visoko (vrednost ena) ali nizko (vrednost nič).

    LM75 kot termometer

    Register, ki hrani zadnjo izmerjeno temperaturo (TEMP), se nahaja na naslovu 0x00, konfiguracijski register (CONF) je na naslovu 0x01, register, ki shranjuje temperaturo histereza na naslovu 0x02 in najvišja ali nadtemperatura (TOS) ima naslov 0x03. Razen trenutne temperature (TEMP) vsi delujejo kot branje in pisanje.

    Z uporabo nekaj primerov kode, razvitih za Arduino (ki je postala skoraj univerzalna referenca) je mogoče delovanje LM75 dodatno pojasniti. Najosnovnejši uporaben primer je uporaba LM75 kot termometra z branjem zapisa zadnje izmerjene temperature.

    Postopek je običajen pri delu z napravo I2C:

    1. Dodajte knjižnico I2C na kodo z #include <Wire.h>
    2. Inicializirajte knjižnico I2C uporabo Wire.begin();
    3. Do temperaturnega senzorja LM75 dostopajte z uporabo Wire.beginTransmission(DIRECCION_LM75)
    4. Pošljite naslov registra, do katerega dostopate z uporabo Wire.write(REGISTRO)
    5. Sprostite avtobus I2C z Wire.endTransmission()
    6. Znova dostopajte do LM75
    7. Zahtevajte vrednost registra z Wire.requestFrom(DIRECCION,CANTIDAD)
    8. Preverite, ali so bili podatki prejeti z uporabo Wire.available()
    9. Preberite zahtevano vrednost Wire.read() (tolikokrat, kolikor bajtov sestavlja)
    10. Čeprav to ni nujno, ko končate, spustite avtobus I2C

    Poleg običajnega protokola za pridobivanje ali shranjevanje informacij v dnevnikih naprave z uporabo avtobus I2C, je za izkoriščanje podatkov, ki jih zagotavlja LM75, treba upoštevati obliko, v kateri interno predstavlja temperaturo.

    Pridobivanje vrednosti, shranjene v temperaturnih zapisih LM75

    V vrstici 22 kode v prejšnjem primeru si lahko ogledate, kako naložiti informacije, shranjene v treh temperaturnih registrih LM75. Uporablja dva bajta (16 bitov), ​​od katerih je veljavnih le 11 najpomembnejših bitov. Za branje temperature kot celega števila (z znakom, kodiranim v komplement dveh) najpomembnejši bajt se najprej naloži v spremenljivko int de Arduino in se zavrti za 8 bitov v levo, tako da ostane v najpomembnejšem delu int. Drugi bajt se nato prebere in doda spremenljivki. int z operacijo ALI

    Razlaga naložene temperaturne vrednosti LM75

    V vrstici 24 si lahko ogledate, kako interpretirati vrednost temperature. Najprej je treba deliti s 32 kot celo število (zasukati ustreznih 11 bitov brez izgube predznaka) in deliti z 8, kar je število "korakov", s katerimi je predstavljena temperatura (oktave stopinje) da dobimo vrednost tipa float z ustreznimi decimalkami. Ker prevajalniki (vključno z orodje de Arduino) optimizira celoštevilsko deljenje s 32, ni treba ohranjati predznaka in "ročno" vrteti bitov, saj operacija ni (opazno) hitrejša.

    Preverite sprejem podatkov iz vodila I2C

    Čeprav bo prejšnja koda delovala brez težav, kljub temu, da ni preverila, ali so prispeli podatki, ki jih zahteva naprava. avtobus I2C, najbolj ortodoksno (in priporočljivo) je počakati, da podatki prispejo v ustreznem številu. Ker sta hitrost prenosa in odpornost na napake več kot zadostni, je pogosto najti kodo, v kateri se podatki preprosto zahtevajo in preberejo brez čakanja. Za primere je koristno, da to storite na ta način, saj ne odvračajo od glavnega namena, za produkcijsko kodo pa je priporočljivo, da to storite, kot je predlagano v sedmi točki seznama komunikacijskega procesa. I2C. Koda v naslednjem primeru poudarja priporočene spremembe za uporabo LM75 v fazi izkoriščanja.

    Konfigurirajte delovanje LM75

    Najosnovnejša konfiguracija LM75 je sestavljena iz določitve najvišje temperature za generiranje opozorila in histereza, ki bo določil, kdaj je deaktiviran in ga je mogoče ponoviti. Če želite konfigurirati te vrednosti, jih morate samo shraniti v ustrezne registre.

    Tako kot trenutni temperaturni rekord, najvišja (opozorilna) temperatura in histereza Uporabljajo dva bajta, vendar za razliko od prvega ne upoštevajo 11 bitov (osmina stopinje), ampak 9 (pol stopinje), tako da bi, tudi če bi bila shranjena manjša vrednost, upoštevani le intervali te ločljivosti.

    Ker je v prejšnji kodi spremenjena samo konfiguracija temperatur, povezanih z opozorilom, preostali del operacije ustreza privzeti konfiguraciji.

    V tej privzeti konfiguraciji sta pomembni dve značilnosti, najprej opozorilni način, privzeto tako imenovani "termostatski način", ki je sestavljen iz aktiviranja opozorila, ko je dosežena najvišja temperatura (ali opozorilo), in njegovega deaktiviranja šele, ko se zniža na temperatura od histereza. Alternativa je "prekinitveni način", v katerem se signal aktivira, ko preseže maksimum ali ko doseže vrednost, ki je nižja od histereza in se ponastavi z branjem katerega koli zapisa, običajno trenutne temperature.

    Druga značilnost je, da se opozorilni signal aktivira na nizki ravni, to pomeni, da je OS pin na visoki ravni, dokler ni dosežena najvišja opozorilna temperatura. Ker je polarnost opozorilnega signala (raven, na kateri se aktivira) nastavljiva, bo v nekaterih preprostih namestitvah dovolj, da uporabite ta signal (strojna oprema) za izkoriščanje LM75, na primer priklop ali odklop ventilatorja, ko sistem doseže določeno temperaturo.

    Možno je tudi konfigurirati delovanje LM75 tako, da ne opozori takoj, ko je dosežena opozorilna temperatura, ampak to stori po več incidentih. To vedenje je zelo uporabno pri delu pri temperaturni meji ali ko se zelo hitro spreminja. LM75 je mogoče konfigurirati tako, da opozori, ko enkrat, dvakrat, štiri ali šestkrat preseže najvišjo temperaturo.

    V konfiguracijskem registru je tudi bit za deaktivacijo ("izklop") LM75 in vstop v način nizke porabe, ki se izstopi s ponovno spremembo tega bita ali preprosto ob branju naslednjega registra.

    po Komentar

    Morda ste zamudili