Snímač teploty DS18b20 pro micro:bit

Vítejte u projektu, kde se naučíme pracovat se snímačem teploty ds18b20. Snímač je uzavřen v integrovaném voděodolném pouzdře pro možnost měření teploty kapalin. Snímač je schopen měřit teplotu s přesností +/-0,5°C. Jedná se o jednoduchý snímač, který umožňuje přesné měření bez potřeby kalibrace a dalšího nastavení.

Co všechno se s ním dá dělat?

  • Měření teploty
  • Sledovaní přechodových dějů
  • Dá se integrovat do projektů
  • Zvládá připojení na další hardware

Obsah

Info

Digitální teploměr DS18b20 poskytuje 9-bitové až 12-bitové měření teploty ve stupních Celsia. Je vybaven funkcí alarmu s uživatelsky programovatelnou horní a dolní spouštěcí úrovní. DS18b20 komunikuje přes 1-Wire sběrnici, která vyžaduje pouze jednu datovou linku (a zem) pro komunikaci s mikroprocesorem. Kromě toho se může DS18b20 napájet přímo z datové linky (tzv. „parazitní napájení“) a tím eliminovat potřebu externího napájení.

Každý DS18b20 má jedinečný 64bitový sériový kód, který umožňuje komunikaci více snímačů na jedné sběrnici. Díku tomu lze jednoduše pomocí jednoho mikroprocesoru měřit teplotu na velké ploše. Mezi aplikace, které tuto funkci využívají, patří řízení prostředí HVAC,  systémy pro monitorování teploty uvnitř budov, zařízení a strojů, nebo systémy pro řízení procesů.

Specifikace

  • Pracovní napětí: 3,0V – 5,5V
  • Rozsah měření: -55°C až 125°C
  • Chyba měření: ±0,5

Potřebné vybavení​

Snímač s převodníkem

Rozšíření pro microbit

micro:bit a USB kabel

Dupont vodiče

Dupont kabel 20 cm samice/samice

OMG Robotics přípravěk (volitelné)

LCD displej (volitelné)

LED 7-segment (volitelné)

Univerzální přípravek (volitelné)

Zapojení

Zapojení s LCD displejem

Ukázka zapojení snímače teploty s LCD displejem k micro:bitu, za použití rozšiřovací desky MB2. Návod k obsluze rozšiřující desky na následujícím odkazu.

Propojení Teploměr - Modul

Žlutý kabel – signálový vodič zapojit do svorky Y (yellow)

Červený kabel – napájecí vodič zapojit do svorky R (red)

Černý kabel – zemnící vodič zapojit do svorky B

Propojení Modul - MB2 (micro:bit)

Sig – signálový pin připojit na pin P0 (žlutá signálová lišta)

VCC – pin pro napájení připojit na napájecí pin 3V3 (bílá kladná napájecí lišta)

GND – zemnící pin připojit na GND (černá záporná napájecí lišta)

Zapojení můžeme realizovat i jinak, ale musíme si dát pozor, abyste v programu nastavili správný signálový pin desky. Při použití programu co je níže musíte připojit vodič na žlutý pin 2 nebo změnit signálový pin v programu.

Propojení LCD - MB2

VCC – pin pro napájení připojit na napájecí pin 3V3 (bílá napájecí lišta)

GND – zemnící pin (záporné napětí) připojit na GND (černá zemnící lišta)

SCL – hodinový signál komunikace I2C připojit na pin SCL

SDA – datový signál komunikace I2C připojit na pin SDA

Zapojení s Univerzálním přípravkem

Ukázka zapojení snímače teploty do  univerzálního přípravku pro micro:bitu, za pomoci IDC kabelu. Návod k obsluze univerzálního přípravku naleznete na následujícím odkazu.

Propojení Teploměr - Modul

Žlutý kabel – signálový vodič zapojit do svorky Y (yellow)

Červený kabel – napájecí vodič zapojit do svorky R (red)

Černý kabel – zemnící vodič zapojit do svorky B (black)

Propojení Modul - Univerzální přípravek (micro:bit)

Plochý kabel s šesti vodiči, která má IDC konektor nejprve zapojíme do univerzálního přípravku na pozici 1 (pin 2) a druhou stranou do modulu teplotního čidla. IDC konektor má na jedné straně drážku, proto lze zapojit pouze jedním směrem.

teplotni_cidlo_pro _micro:bit

Testovací program

Zobrazení teploty na LCD displeji

Vpravo najdete vzorový program, který nám po správném zapojení bude fungovat rovnou po stažení do micro:bitu. Při zapnutí se na displeji zobrazí text a následně se spustí měření údajů ze snímače teploty.

Popis programu

  • Při startu nastavíme displej za pomocí bločku connect LCD at I2C. Adresa se nikdy při použití displeje LCD1602 nemění, tudíž vždy použijeme hodnotu 39.
  • Na displej vypíšeme název „OMG Robotics“, nebo třeba jméno vaší školy.
  • Po krátké pauze vymažeme displej.
  • V dalším kroku nastavíme text, který bude zobrazen na prvním řádku a v průběhu programu se měnit nebude. Zde je dobré napsat, jakou veličinu měříme a uvést správné jednotky. Nastavíme tak pozici 1, kde se zobrazí první znak textového řetězce. Délku textu můžeme nechat nastavenou na délku řádku. Nakonec zvolíme zarovnání textu.
  • V nekonečné smyčce budeme na druhém řádku zobrazovat měřené hodnoty. Hodnotu přečtenou z pinu P0, na které je připojený teploměr, nejprve zaokrouhlíme na jedno desetinné místo.

Originál návod a bližší informace k knihovně naleznete v nápovědě konkrétních bločků pro teploměr.

Zobrazení teploty na Univerzálním přípravku

Tento program má stejnou funkci, jako předchozí, ovšem místo čtení z pinu P0 provádí čtení z pozice 1 na Univerzálním přípravku.

Popis programu

  • Při startu nastavíme displej za pomocí bločku connect LCD at I2C. Adresa se nikdy při použití displeje LCD1602 nemění, tudíž vždy použijeme hodnotu 39.
  • Na displej vypíšeme název „OMG Robotics“, nebo třeba jméno vaší školy.
  • Po krátké pauze vymažeme displej.
  • V dalším kroku nastavíme text, který bude zobrazen na prvním řádku a v průběhu programu se měnit nebude. Zde je dobré napsat, jakou veličinu měříme a uvést správné jednotky. Nastavíme tak pozici 1, kde se zobrazí první znak textového řetězce. Délku textu můžeme nechat nastavenou na délku řádku. Nakonec zvolíme zarovnání textu.
  • V nekonečné smyčce budeme na druhém řádku zobrazovat měřené hodnoty. Hodnotu přečtenou z pozice 1 na Univerzálním přípravku, na kterou je připojený teploměr, nejprve zaokrouhlíme na jedno desetinné místo.

Originál návod a bližší informace k knihovně naleznete v nápovědě konkrétních bločků pro teploměr.

Zobrazení teploty na displeji micro:bitu

Pokud nemáte po ruce displej, je možné zobrazit teplotu na displeji micro:bitu. Programování je totožné jako v předchozím případě, akorát nejsou použity bločky pro externí LCD, ale bločky pro zobrazování na micro:bitu. Po správném zapojení se na displeji začne zobrazovat měřená teplota.

V případe, že máte zájem o podkladové materiály, nebo máte jakékoliv otázky, nás můžete kontaktovat na emailu:

pavel.safl@omgrobotics.com