Nejjednodušší online teploměr (2)

Petr Bitnar 11. 4. 2003

Po přečtení článku "Nejjednodušší online teploměr" jsem se rozhodl k napsání tohoto článku. Hned na úvod se ale sluší poznamenat, že se chci pouze podělit se svými zkušenostmi, jak lze provozovat podobný teploměr, nechci se pouštět do diskuse, zda je ještě jednodušší, levnější apod. Nejde o nic jiného než o některým známý projekt DigiTemp, jehož autorem je Brian C. Lane.

Úvod

Jádrem celého DigiTempu je osvědčená řada „digitálního teploměru“ (DS18S20 a další) výrobce Dallas Semiconductor. V krátkosti některé vlastnosti:

  • jedná se o integrovaný mikroprocesor s unikátním číslem a kalibrací přímo na čipu,
  • komunikace probíhá po datové sběrnici 1-wire, tzn. odpadá „venkovní“ nepřesnost a kalibrace,
  • základní přesnost měření je +/-0.5 &degC; (dá se softwarově zvýšit),
  • možnost nastavení dolní a horní teploty pro funkci teplotního komparátoru apod.

Pro detailnější informace (o komunikačním protokolu) doporučuji katalogové listy této součástky nebo ještě lépe součástek ostatních, které komunikují po již zmíněné datové sběrnici 1-wire.

Hardware

Připojení čidla jsem realizoval přes tzv. pasivní adapter DS9097, který se připojuje na sériový COM port. Jak již bylo poznamenáno, každý „teploměr“ má jedinečné číslo již z výroby. Toho se s výhodou využívá pro připojení více čidel přes jediný adapter. Počet čidel je teoreticky neomezený, prakticky je limit pouze v délce a kvalitě kabelů k čidlům. Vlastní adaptér si popíšeme trochu podrobněji, jelikož dle mých zkušeností je konstrukce navržena „dosti fest“, tzn. vyžaduje přesné specifikace ani ne tak vlastních součástek, ale především „kvality“ COM portu, a zde je jádro problému. Adaptér je třeba v případě nutnosti doplnit o trimr podle obrázku. Výhodou je, že se při jeho nastavování obejdete i bez měřícího přístroje. Pokud budete mít štěstí, bude vám adaptér fungovat ihned napoprvé i bez zmíněné úpravy.

schéma DS9097


Další možností je použít tzv. aktivní adaptér DS9097U, což ale nebyla moje volba. Tento adaptér sice nabízí možnosti připojení dalších čidel fy Dallas, nicméně stojí řádově stovky Kč. Pro základní měření teploty zcela dostačuje pasivní adaptér za pár Kč.

Software

Dříve byly udržovány samostatné verze pro každý adaptér (způsob komunikace s pasivním resp. s aktivním adaptérem je zcela odlišný). Verze 3 a vyšší byla zcela přepracována a nyní již podporuje oba adaptéry. Není asi třeba zdůrazňovat, že se jedná o konzolovou aplikaci, která sama o sobě „pouze“ získá hodnoty z jednotlivých čidel.

To, co vás ale možná nadchne (stejně jako mě), je provázanost se známým a používaným projektem pro tvorbu grafů RRD TOOL – autor Tobi Oetiker (známější asi projektem MRTG). Tím jsme ale malinko odbočili. Celou sílu projektu DigiTemp vidím v jednoduchosti instalace, žádné kalibraci a právě v již zmíněné návaznosti na RRD Tool. Kdy můžete získat celkem slušný grafický výstup, aniž byste museli cokoli dalšího programovat (viz obrázek)

grafický výstup


Celý projekt je šířen jako Open Source pod GNU licencí.

Instalace

Vlastní instalace je poměrně jednoduchá, já jsem použil instalaci ze zdrojového kódu. Ta je zde částečně popsána. Jediné, co musíte mít, jsou přístupová práva k sériovému COM portu.

make ds9097

nebo make ds9097u dle použitého adaptéru,

digitemp -sttySx -i

pro vytvoření konfiguračního souboru a především pro zjištění připojených čidel. Pokud vše funguje, měli byste vidět něco podobného:

Searching the 1-Wire LAN
105E52460008004F : DS1820 Temperature Sensor
10F367460008000F : DS1820 Temperature Sensor
ROM #0 : 105E52460008004F
ROM #1 : 10F367460008000F
Wrote .digitemprc

Pokud nelze nalézt čidla, máte nejpravděpodobněji problém s adaptérem a budete ho muset doplnit o trimr. K jeho nastavení stačí celý postup několikrát opakovat s jeho současným otáčením, až se čidla detekují. To je jediný možný zádrhel na celém zapojení.

# zjisteni teploty kazdych 5min
00-59/5 * * * * /log_temp
01-59/5 * * * * /temp-minmax
01-59/5 * * * * /temp-minmax-7d

Toto je příklad crontabu, který spouští perlovské skripty (jsou součástí DigiTempu) pro načtení teplot z čidel s následným uložením do databáze.

Mechanická konstrukce

Vlastní adaptér jsem postavil systémem vrabčího hnízda přímo do konektoru Cannon SUB-9. Proto nemá smysl hovořit o postupu konstrukce. V zadní části konektoru (viz levý obrázek) je trochu vidět svorkovnice, ke které se připojují čidla. Pro vlastní připojení čidel jsem zvolil kvalitní stíněný mikrofonní kabel. Pravý obrázek ukazuje tepelně smršťovací bužírku, která je přetažena přes kabel a pouzdro TO92 čidla. Vodotěsné to asi úplně není, ale funguje to i venku.

zadní část konektorutepelně smršťovací bužírka


Ještě je dobré se zmínit, kde lze součástky sehnat. Všechny normální v GME nebo v GESu. S čidlem to už je malinko problém, ale řešitelný. Já jsem kontaktoval přímo dovozce fy Dallas. Jedná se o firmu HT Eurep, což je sice velkoobchod, ale jsou ochotni prodat i kusově. Cena čidla se pochopitelně liší dle typu, množství apod., ale dá se sehnat řádově od 150 Kč/ks. Celkovou cenu teploměru určuje de facto pouze počet a typ připojených čidel.

Závěr

Považuji tento projekt za zdařilý, o čemž svědčí i řada spokojených uživatelů. Zde mi nedá, abych neřekl, že jsme mezi nimi také (odkaz Czech Technical University in Prague na autorových stránkách). Pokud budete spokojeni taktéž, autor rád přidá odkaz i na váš teploměr. Za zmínku ještě stojí to, že software DigiTempu existuje nejen pro Linux, ale i pro DOS a Windows. Asi jedinou drobnou (ale řešitelnou) vadou na kráse zůstává možný problém s pasivním adaptérem.

Rád bych poznamenal, že nemám nic společného s žádnou z uvedených firem.

Našli jste v článku chybu?
DigiZone.cz: CME: Rumunsko výrazně posiluje

CME: Rumunsko výrazně posiluje

Měšec.cz: Ceny PHM v Evropě. Finty na úspory

Ceny PHM v Evropě. Finty na úspory

Měšec.cz: Banky umí platby na kartu, jen to neříkají

Banky umí platby na kartu, jen to neříkají

Měšec.cz: Se stavebkem k soudu už (většinou) nemusíte

Se stavebkem k soudu už (většinou) nemusíte

120na80.cz: I tuto vodu můžete pít

I tuto vodu můžete pít

Vitalia.cz: Signál roztroušené sklerózy: brnění končetin

Signál roztroušené sklerózy: brnění končetin

Podnikatel.cz: Polská vejce na českém pultu Albertu

Polská vejce na českém pultu Albertu

Podnikatel.cz: Tahle praktika stála šmejdy přes milion

Tahle praktika stála šmejdy přes milion

Podnikatel.cz: Od baletu k požární ochraně. A jiné rarity

Od baletu k požární ochraně. A jiné rarity

DigiZone.cz: Samsung uvolnil nástroj pro Tizen

Samsung uvolnil nástroj pro Tizen

Podnikatel.cz: Přiznal prodej padělků. Pokuta ho nemine

Přiznal prodej padělků. Pokuta ho nemine

Podnikatel.cz: Účtenky v rámci EET? Klidně emailem

Účtenky v rámci EET? Klidně emailem

Lupa.cz: IT scéna po brexitu: přijde exodus vývojářů?

IT scéna po brexitu: přijde exodus vývojářů?

Měšec.cz: Do ostravské MHD bez jízdenky. Stačí vaše karta

Do ostravské MHD bez jízdenky. Stačí vaše karta

Měšec.cz: Kurzy platebních karet: vyplatí se platit? (TEST)

Kurzy platebních karet: vyplatí se platit? (TEST)

Lupa.cz: Japonská invaze. Proč SoftBank kupuje ARM?

Japonská invaze. Proč SoftBank kupuje ARM?

DigiZone.cz: Android TV: s jakým pracuje rozlišením?

Android TV: s jakým pracuje rozlišením?

Lupa.cz: Vodafone umí volání přes Wi-Fi. Z ciziny jako v ČR

Vodafone umí volání přes Wi-Fi. Z ciziny jako v ČR

DigiZone.cz: Sat novinky: Skylink skončil s kanály ČT

Sat novinky: Skylink skončil s kanály ČT

Měšec.cz: Co s reklamací, když e-shop krachuje?

Co s reklamací, když e-shop krachuje?