Portál AbcLinuxu, 31. května 2024 06:40

Teploměr DS1820 připojený k Beaglebone

3.3.2014 06:11 | Přečteno: 2056× | Počítače | poslední úprava: 2.3.2014 22:39

Připojení teploměru k BeagleBone.

Ještě než začal svět ve velkém blbnout s Raspberry PI, začal jsem si hrát s BeagleBone. BeagleBone je malý ARM počítač podobný Raspberry PI, hlavní rozdíl bych viděl v možnostech rozšiřování - BeagleBone je konstrukčně řešený tak, aby se k němu daly snadno připojovat rozšiřující desky. Ve firmě jsme na BeagleBone postavili malý počítač pro sběr dat: FotobotHW. Protože nám nějaké BeagleBone zbyly, začal jsem si trochu hrát.

Ze šuplíku jsem vytáhnul teploměr DS1820 - to je digiální třínožičkový teploměr. Driver je obsažený přímo v kernelu, neměl by tedy být problém teploměr připojit. I když je to snadné, trvalo mi připojení dost dlouhou dobu - nejobtížnější částí bylo získat potřebné informace. Takže jak na to:

Driver je přímo součástí jádra. V Beaglebonu nepoužívám originální jádro (není zde podpora pro IPv6), překládám si jádro vlastní (ke stažení zde: http://hobrasoft.cz/cs/fotobothw/linux-3.2.34.tar.bz2). Zde je driver součástí defaultní konfigurace. Pátráním ve zdrojácích jsem nakonec našel příslušné vývody - a taky to, že tato informace se vypisuje při bootu kernelu. Vypsat si ji můžeme třeba takto:

dmesg | grep w1
[    0.463470] BeagleBone cape: initializing w1-gpio
[    0.463592] w1-gpio connected to P8_6

Abychom rozluštili zkratku P8_6, potřebujeme manuál k BeagleBone. Jde o vývod č. 6 na konektoru P8. Na tento vývod tedy přijde připojit datový vodič sběrnice.

Pro připojení teploměru potřebujeme ideálně tři vodiče - zem, data a napájení. Zem najdeme na vývodu P8_1 a P8_2, napájení pak na P9_3.

Po připojení teploměru už by měl být teploměr kernelem viděn. Ověřit to můžeme v adresáři /sys/bus/w1/devices:

ls /sys/bus/w1/devices/
28-0000027d912e  28-00000294d39a  w1_bus_master1

Super! Kernel našel na sběrnici dva teploměry. Jaká je tedy teplota?

cat /sys/bus/w1/devices/28-0000027d912e/w1_slave
6f 01 4b 46 7f ff 01 10 67 : crc=67 YES
6f 01 4b 46 7f ff 01 10 67 t=22937

Teplota je vypsaná parametrem t. Desetinná tečka není uvedená. Hodnota 22937 odpovídá teplotě 22.937 stupňů Celsia.

Nyní už je snadné se pochlubit teplotou ve své kanceláři (pouze přes IPv6):

http://beagle.bravenec.eu/

Stránky jsou pouze statické, generované každých 15 vteřin. Obrázky, CSS a vše ostatní se tahá odjinud.

Po napsání článku jsem připojil ještě šuplíkový LCD displej. Prodrátování na fotkách není vidět.

       

Hodnocení: 100 %

        špatnédobré        

Obrázky

Teploměr DS1820 připojený k Beaglebone, obrázek 1 Teploměr DS1820 připojený k Beaglebone, obrázek 2 Teploměr DS1820 připojený k Beaglebone, obrázek 3

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (2) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

3.3.2014 15:03 karel
Rozbalit Rozbalit vše Re: Teploměr DS1820 připojený k Beaglebone
Odpovědět | Sbalit | Link | Blokovat | Admin
Je to skoro jako reklama na ty stránky. Ale jinak dobrý.
Petr Bravenec avatar 3.3.2014 17:04 Petr Bravenec | skóre: 43 | blog: Bravenec
Rozbalit Rozbalit vše Re: Teploměr DS1820 připojený k Beaglebone
Ono je to dané způsobem vzniku tohoto zápisku. Původně je to skutečně psané pro naše stránky. Zároveň je mi líto, že by měla taková informace zapadnout. Jděte na Google a hledejte, jak DS1820 připojit - najdete pouze jeden článek recyklovaný do několika desítek verzí.

Podobných článků mám víc - příště si dám trochu práce s tím, aby z nich jejich původ tolik nečpěl.
Petr Bravenec - Hobrasoft s.r.o.
3.3.2014 23:14 Sten
Rozbalit Rozbalit vše Re: Teploměr DS1820 připojený k Beaglebone
Odpovědět | Sbalit | Link | Blokovat | Admin
Parádní článek, díky za něj!
4.3.2014 07:38 Petus
Rozbalit Rozbalit vše Re: Teploměr DS1820 připojený k Beaglebone
Odpovědět | Sbalit | Link | Blokovat | Admin
Ahoj, fakt super. Nebudete mít na prodej nějaké BeagleBony? :-) Měl bych zájem.
Petr Bravenec avatar 5.3.2014 08:18 Petr Bravenec | skóre: 43 | blog: Bravenec
Rozbalit Rozbalit vše Re: Teploměr DS1820 připojený k Beaglebone
Napište mi.
Petr Bravenec - Hobrasoft s.r.o.

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.