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.

widgety

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?
Vitalia.cz: Tahák, jak vyzrát nad zápachem z úst

Tahák, jak vyzrát nad zápachem z úst

Podnikatel.cz: Letáky? Lidi zuří, ale ony stále fungují

Letáky? Lidi zuří, ale ony stále fungují

Lupa.cz: Proč jsou firemní počítače pomalé?

Proč jsou firemní počítače pomalé?

Lupa.cz: Cimrman má hry na YouTube i vlastní doodle

Cimrman má hry na YouTube i vlastní doodle

Podnikatel.cz: Babiš: Článek Soukupa k EET je plný nesmyslů

Babiš: Článek Soukupa k EET je plný nesmyslů

DigiZone.cz: Digi Slovakia zařazuje stanice SPI

Digi Slovakia zařazuje stanice SPI

Vitalia.cz: Tohle jsou nejlepší česká piva podle odborníků

Tohle jsou nejlepší česká piva podle odborníků

Vitalia.cz: Antibakteriální mýdla nepomáhají, spíš škodí

Antibakteriální mýdla nepomáhají, spíš škodí

DigiZone.cz: DVB-T2 ověřeno: seznam TV zveřejněn

DVB-T2 ověřeno: seznam TV zveřejněn

Lupa.cz: Další Češi si nechali vložit do těla čip

Další Češi si nechali vložit do těla čip

Lupa.cz: Patička e-mailu závazná jako vlastnoruční podpis?

Patička e-mailu závazná jako vlastnoruční podpis?

DigiZone.cz: Technisat připravuje trojici DAB

Technisat připravuje trojici DAB

Lupa.cz: Jak se prodává firma za miliardu?

Jak se prodává firma za miliardu?

DigiZone.cz: Numan Two: rozhlasový přijímač s CD

Numan Two: rozhlasový přijímač s CD

120na80.cz: Nejsilnější alergeny jsou pryč

Nejsilnější alergeny jsou pryč

Vitalia.cz: Tradiční čínská medicína a rakovina

Tradiční čínská medicína a rakovina

DigiZone.cz: Parlamentní listy: kde končí PR...

Parlamentní listy: kde končí PR...

Podnikatel.cz: ČSSZ posílá přehled o důchodovém kontě

ČSSZ posílá přehled o důchodovém kontě

120na80.cz: Galerie: Čínští policisté testují českou minerálku

Galerie: Čínští policisté testují českou minerálku

120na80.cz: Co je padesátkrát sladší než cukr?

Co je padesátkrát sladší než cukr?