5

Teplotní čidlo LM335

LM335 je jednoduché čidlo tepla s 3 piny. Díky tomu je snadně připojitelný nejen k Arduino. V kódu budeme muset převést Kelviny na stupně Celsia pomocí jednoduchého výpočtu.

Potřebujeme

Naším cílem je vytvořit digitální teploměr, který odesílá data na Serial monitor. 

Budeme potřebovat dva piny ze tří. Zapojte nejdříve na nepájivé pole. Rezistory připojte za sebou na prostřední pin. Prostřední pin poté připojte na analog0. Třetí pin čidla musí být připojen k zemi. Pokud zapojení dostatečně nechápete, podívejte

zapojeni lm335

Výpočet jednotek: K vypočtení čteme Kelviny z pinu analog0. Od Kelvinů odečteme 273.15, abychom získali Celsia.

Zdrojový kód

[sourcecode language=“plain“]
/*************************************************
* Teplotní čidlo LM335 s Arduino
* arduinonavody.eu
*************************************************/

float teplotaK = 0;
float teplotaC=0;

void setup(){

Serial.begin(9600); //Nastavení na 9600 bps
}

void loop(){

teplotaK = analogRead(0) * 0.004882812 * 100; //přečtení teploty v Kelvinech

teplotaC= teplotaK – 273.15; //konvertování z Kelvinů na Celsia

//zobrazení údajů na Serial Monitoru
Serial.print("Teplota v Kelvinech: "); Serial.println(teplotaK);
Serial.print("Teplota v stupnich Celsia:"); Serial.println(teplotaC);
Serial.println(); //vytvori mezeru
delay(1000); //počkání 1 sekundu
}
[/sourcecode]

 Děkuji čtenáři LUBOSS za doplnění článku
Jedná o ANALOGOVÉ čidlo teploty s lineární charakteristikou 10 mV/°K. To znamená, že pokud se změní teplota čidla o jeden stupeň Kelvina, tak se jeho odpor změní tak, že napětí na něm bude o 10 milivoltů jiné. Takže zapojení využívá jednoduchý napěťový dělič, na kterém je pomocí analogového vstupu arduina čteno napětí a jednoduchým převodem převedeno na teplotu v °K a následně v °C. Dle datasheetu čidla by se použité odpory měly volit tak, aby čidlem protékal proud zhruba 1 mA.

Arduino Uno, Mega, Senzory, Moduly za

VÝHODNOU CENU

Adam Gajdečka

Vytvářím návody pro Arduino, skvěle se orientuji v IT a označuji se za geeka. Miluji nové technologie, protože jsou úžasné. Budu rád, když můj malý magazín o Arduinu podpoříte! Děkuji moc, jste skvělí

  1. Čidlo pracuje spolehlivě, tedy přesně. Dík za inspiraci. Jen bych rád doplnil drobnost: číslovka 0.004882812 vznikla podílem 5000 / 1024 kde 5tisíc je napětí 5 voltů (a 1024 rozsah analogového vstupu). Jenže pokud máme napětí malinko jiné, je třeba korigovat. Na svém Arduinu mini připojeného k USB mám pouhých 4.91 Voltů. Dávám tedy 0.00480.

    • Jo jo, výsledné napětí, tedy po přepočtu teplota, je VELMI závislá na napájecím napětí! Hlavní výhoda tohoto čidla je ale v tom, že závislost výstupního napětí na teplotě je lineární a navíc s pěkně „kulatým“ krokem 10 mV na jeden stupeň Kelvina, takže případná kalibrace je vcelku snadná. Našinec je sice zvyklý spíše na °C, ale stačí od výsledku odečíst 273.15 a je to tam.
      Nicméně pro seriózní měření by to chtělo napájet čidlo z nějakého stabilizovaného zdroje a určitě provést kontrolní měření a následně upravit zdrojový kód podle konkrétního napájecího napětí jak popisuje QUARK66 výše.

  2. Zajímavý článek, ale doplnil bych jej pro začátek o zcela zásadní informaci a sice, že se jedná o ANALOGOVÉ čidlo teploty s lineární charakteristikou 10 mV/°K.
    To znamená, že pokud se změní teplota čidla o jeden stupeň Kelvina, tak se jeho odpor změní tak, že napětí na něm bude o 10 milivoltů jiné. Takže zapojení využívá jednoduchý napěťový dělič, na kterém je pomocí analogového vstupu arduina čteno napětí a jednoduchým převodem převedeno na teplotu v °K a následně v °C. Dle datasheetu čidla by se použité odpory měly volit tak, aby čidlem protékal proud zhruba 1 mA.

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *