Svetelektro.com

Svetelektro.com

Meno:
Heslo:

Senzor teploty a vlhkosti - SHT25

Kategória: Mikroprocesory | 09.05.2013 | Autor: luboss17 

Popis senzora teploty a vlhkosti SHT25, realizácia zapojenia, opis spôsobu komunikácie a ukážkový program pre MCU AVR. 
Momentálne pracujem na meteorologickej stanici a jednou zo základných meteorologických veličín, ktoré budem merať je teplota. Pri hľadaní vhodného snímača do mojej stanice mi firma SOS electronic poskytla vzorku snímača SHT25, ktoré produkuje firma Sensirion. V tomto článku by som sa chcel venovať popisu tohto snímača, meraní teploty a vlhkosti pomocou neho a na záver ukážku programu pre mikropočítač. 
 

Popis senzora

Senzor SHT25 umožňuje merať teplotu a relatívnu vlhkosť a ako uvádza výrobca na svojom webe, ide o najpresnejšiu verziu najmenšieho senzora vlhkosti na svete. Ide o digitálny senzor v púzdre DFN o rozmeroch 3x3 mm, ktorý je už nakalibrovaný pri výrobe. Údaj z neho stačí len prečítať a vložiť do vzorca uvedeného v dokumentácii a výsledkom je buď teplota v [°C] alebo relatívna vlhkosť v [%].

 
So senzorom sa komunikuje cez dvojvodičovú zbernicu i2C a umôžňuje aj kontrolu prenášaných dát pomocou CRC. 
 
Presnosť merania teploty udáva výrobca na +-0,2°C v rozsahu 5 až 60°C pričom meraný rozsah senzora je od -40 do 125°C.
Pri meraní vlhkosti je presnoť +-1,8% RH na rozsahu 10 až 90 %. Krivky presnosti vidno na nasledujúcich obrázkoch.
Rozlíšenie merania je možné nastaviť na 12 alebo 14 bitov, od toho záleží aj časová dlžka merania danej veličiny. 





 
 
Pre testovanie senzora som navrhol malú DPSku o rozmeroch 15x15 mm a vývody na i2C zbernicu a napájanie som vyviedol na 4pinovú kolíkovú lištu. Takto je možné so senzorom jednoduchšie narábať pri testovaní. Schéma zapojenia a navrhnutá DPS je na nasledujúcom obrázku a súbory pre Eagle si môžete stiahnúť tu

Schéma zapojenia


Osadenie DPS


Hotový výrobok
 

Komunikácia a spracovanie dát


Pri meraní sa používajú dva režimy: 
a) Hold master mode - v tomto režime drží senzor SCL linku „blokovanú“ teda preberá nad ňou kontrolu a po ukončení merania ju povolí;
b) No-hold master mode – v tomto režime sa počas merania senzora može komunikovať s iným zariadením pripojeným na tú istú zbernicu i2C. 
 
Spôsob merania veličiny resp. priebeh komunikácie pre No-hold master mode je zobrazený na diagrame dole. Priebeh je nasledovný: master začne komunikáciu štart podmienkou na zbernici a vysiela 7bit adresu senzora spolu s LSB bitom, ktorým sa označuje zápis (alebo čítanie) zo zbernice. Ďalej sa odosiela príkaz (napr. meranie teploty, meranie vlhkosti). Po tejto akcii začne čidlo merať požadovanú veličinu. Podľa nastaveného rozlíšenia, ktoré sa nastavuje zápisom do tzv. užívateľského registra, treba počkať určitý čas kým prebehne meranie a prevod veličiny alebo sa môže komunikovať s iným zariadením na zbernici.
Dlžky jednotlivých meraní sú zrejmé z tabuľky. 

 
Komunikácia zo senzorom SHT25


Príkazy pre SHT25


Časovanie meraní
 
Po zmeraní veličiny senzorom začne master zariadenie komunikáciu s tým, že teraz nastavíme LSB bit pri vysielaní adresy pre čítanie zo zbernice, po potvrdení ACK bitom senzorom začne senzor posielať jednotlivé bajty s dátami. Celkovo sa posielajú tri a to horný a spodný bajt zmeranej veličny a CRC súčet z ktorým sa overuje správnosť prenosu dát. 
 
Nasleduje overenie správnosti prenosu dát výpočtom CRC súčtu a porovnaním s CRC prijatým od senzora. Ak sú zhodné môže sa robiť výpočet teploty resp. vlhkosti.
Výpočet robíme použitím vzorcov z dokumentácie, ktoré sú nasledovné: 
 
SRH a ST je 16bitový údaj prijatý zo senzora, pričom status bity (spodne dva bity) znulujeme. Takto dostaneme výslednú teplotu v °C a relatívnu vlhkosť v %. Pre zaujímavosť môžeme vypočítať aj rosný bod [2]. 
 
Na ukážku som zostavil aj program pre AVR MCU (aj keď v už spomínanej meteorologickej stanici chcem použiť mikropočítač od ST). 

 
Program si môžete stiahnúť tu ako projekt v AVR Studio 4

 
Chcem ešte upozorniť na jednu menšiu chybu, ktorú som si pri písaní programu nevšimol. Rosný bod sa údava v stupňoch Celzia nie v % ako to mam aj na fotografii. 
 
V závere by som chcel vyzdvihnúť výhodné vlastnosti senzora ako je jednoduchosť práce s nim (pri programovaní), nie je potrebné ho kalibrovať keďže je kalibrovaný pri výrobe, jeho presnosť merania, nastaviteľné rozlíšenie atď. čo sa odrazilo aj na jeho cene. Ako som už spomínal v úvode, senzor chcem využiť pre meteorologickú stanicu na ktorej momentálne pracujem a chcem zkonštruovať jednu na Žilinskej univerzite a druhú na východnom Slovensku v okrese Humenné. 
 
Použitá literatúra: 
[1] Dokumentácia k senzoru SHT25 
[2] Výpočet rosného bodu 
 
Poďakovanie: 
SOS electronic - za poskytnutie vzoriek senzorov SHT25 
Ondrej Závodský (zawin) - za zaspájkovanie senzora na DPS 
 

 


12.06.2013

Templogger

 8768   5  Hodnotenie: 4Hodnotenie: 4Hodnotenie: 4Hodnotenie: 4Hodnotenie: 4

02.07.2013

Mikropájka 2011

 13693   8  Hodnotenie: 4.5Hodnotenie: 4.5Hodnotenie: 4.5Hodnotenie: 4.5Hodnotenie: 4.5

02.02.2012

Programujeme AVR v jazyku C - 2. časť

 34633   14  Hodnotenie: 4.85Hodnotenie: 4.85Hodnotenie: 4.85Hodnotenie: 4.85Hodnotenie: 4.85

Priemerné hodnotenie: 5
Hlasov: 2

Vynikajúci

Zvoľte počet hviezdičiek:
Vynikajúci
Veľmi dobrý
Dobrý
Priemerný
Zlý



Za obsah komentárov je zodpovedný užívateľ, nie prevádzkovateľ týchto stránok.

Re: Senzor teploty a vlhkosti - SHT25 (Hodnotenie: 1)
Od: mat100 - 12.05.2013
(O užívateľovi | Poslať súkromú správu)
Dražší čidlo už asi neměli ...
Re: Senzor teploty a vlhkosti - SHT25 (Hodnotenie: 1)
Od: foxter - 12.05.2013
(O užívateľovi | Poslať súkromú správu) http://www.projectik.eu
 
Na obr. mas mini chybu :D. Rosny bod je v °C . V kode to mas dobre :P.
Re: Senzor teploty a vlhkosti - SHT25 (Hodnotenie: 1)
Od: jaromir - 12.05.2013
(O užívateľovi | Poslať súkromú správu) http://jaromir.xf.cz/
 
Pod obrazkom sam autor upozornuje na tuto chybu. Aspon vidno, ako pozorne si cital text :)
Re: Senzor teploty a vlhkosti - SHT25 (Hodnotenie: 1)
Od: rambik7 - 15.05.2013
(O užívateľovi | Poslať súkromú správu)
 
výborne to si robil ako podakovanie ja to mám tiež lenže nejako mi nezostáva priamo na toto čidlo čas robim ti s PIC
Autor stránky je Ondrej Závodský(zawin), o graficky design sa stará Ľuboš Fabo(BUFU).

TOPlist

Powered by Copyright © UNITED-NUKE CMS. All Rights Reserved.
Čas potrebný k spracovaniu stránky 0.04 sekúnd