Hlavní navigace

Bezdrátový přenos s IQRF: čtení z externích čidel

Ivona Spurná

Dnes si ukážeme, jak číst data z externího teplotního čidla Dallas, hodnoty z čidla intenzity osvitu (fotorezistor) či hodnoty napětí pomocí potenciometru. Využijeme Custom DPA Handler.

Napětí a osvit

Pro získání hodnot reprezentujících napětí a intenzitu osvitu můžete využít rozšiřující senzorický kit DDC-SE-01, který lze snadno připojit do vývojového zařízení DK-EVAL-04A. Na tomto kitu najdete senzor intenzity osvětlení – fotorezistor, potenciometr pro snímání hodnot napětí či externí teplotní čidlo Dallas 18B20.

V sadě připravených příkladů (Examples\DPA\CustomDpaHandlerExamples) najdete příklad CustomDpaHandler-UserPeripheral-ADC.c určený pro čtení hodnot z fotorezistoru a potenciometru.

minulém dílu jste se seznámili s tím, jak pracovat s programovou nadstavbou Custom DPA Handler. Také jste sestavili funkční mesh síť IQRF, pomocí které můžete pokrýt rozlehlou plochu, ze které můžete snímat hodnoty a ovládat zařízení. Nebudeme zde tedy znovu rozebírat, jak postavit síť a jak zařízení nakonfigurovat, aby mohla programovou nadstavbu Custom DPA Handler využívat.

Do Nodu, na který připojíte rozšiřující senzorický kit, nahrajte zkompilovaný program CustomDpaHandler-UserPeripheral-ADC-7×D-V226–160303.hex (či jeho jinou variantu) a povolte použití Custom DPA Handleru. Prostudujte tento handler, abyste věděli, na jakou periferii zasílat příkazy, případně data.

Technické údaje

Z komentářů v příslušném Custom DPA Handleru zjistíte, že PNUM = 0×20 a PCMD = 0 vrací dvoubajtovou hodnotu s 10b ADC výsledkem z pinu C5 (AN4) v parametru PData, a že PNUM = 0×21 a PCMD = 0 vrací dvoubajtovou hodnotu s 10b ADC výsledkem z pinu C1 (AN0) v parametru PData.

V dokumentaci senzorického kitu zjistíte, že pin C5 je připojen na potenciometr a C1 na fotorezistor.

Když tedy zašlete příkaz PCMD = 0 na první uživatelskou periferii PNUM = 0×20, získáte v parametru PData hodnotu z potenciometru, a pokud jej zašlete na druhou uživatelskou periferii PNUM = 0×21, získáte hodnotu z fotorezistoru.

Přijatá hodnota v parametru PData (v pořadí Little-endian – PDATA[1] a PDATA[0]) – zde 0×022A odpovídá hodnotě z potenciometru – binárně vyjádřeno jako 0000 0010 0010 1010. Jedná se o 10bitovou hodnotu zapsanou v těchto 2 bajtech, která se dá převést na napětí.

Podobně, když pošlete příkaz PCMD = 0 na druhou uživatelskou periferii PNUM = 0×21, bude vrácena hodnota z čidla intenzity osvitu.

Tato 10bitová hodnota (zde 0×0126 – binárně 0000 0001 0010 0110) lze dle dokumentace daného čidla převést na hodnotu odpovídající hodnotě intenzity osvětlení.

Teplota z čidla Dallas 18B20

Na senzorickém kitu najdete externí teplotní čidlo Dallas 18B20, pomocí kterého můžete měřit teplotu okolí neovlivněnou vlastním transceiverem. Pro čtení této teploty je připraven příklad CustomDpaHandler-UserPeripheral-18B20.c. Příslušný hex soubor nahrajte do transceiveru, prostudujete kód Custom DPA Handleru, a zašlete data pro získání teploty.

Postup je stejný jako v případě získání hodnoty z potenciometru. Příkaz PCMD = 0 se zasílá na první uživatelskou periferii PNUM = 0×20, a vrácená hodnota se nachází v parametru PData. Rozdíl je tedy pouze v tom, jaký program zaslaný příkaz zpracovává.

V této ukázce jsme získali hodnotu 0×0190, což binárně odpovídá hodnotě 0000 0001 1001 0000. Interpretace hodnoty závisí na samotném čidlu, jehož manuál je třeba vyhledat a prostudovat. Zde byla vrácena hodnota 25°C.

Zdroj: datasheet DS18B20 [PDF]

V příštím dílu se podíváme blíže na tzv. FRC – Fast Response Command, který umožňuje hromadné získávání informací ze zařízení či jejich řízení.

Našli jste v článku chybu?
Lupa.cz: Teletext je „internetem hipsterů“

Teletext je „internetem hipsterů“

Vitalia.cz: Taky věříte na pravidlo 5 sekund?

Taky věříte na pravidlo 5 sekund?

Podnikatel.cz: Změny v cestovních náhradách 2017

Změny v cestovních náhradách 2017

Lupa.cz: Kdo pochopí vtip, může jít do ČT vyvíjet weby

Kdo pochopí vtip, může jít do ČT vyvíjet weby

Podnikatel.cz: K EET. Štamgast už peníze na stole nenechá

K EET. Štamgast už peníze na stole nenechá

Vitalia.cz: Proč vás každý zubař posílá na dentální hygienu

Proč vás každý zubař posílá na dentální hygienu

120na80.cz: Horní cesty dýchací. Zkuste fytofarmaka

Horní cesty dýchací. Zkuste fytofarmaka

Podnikatel.cz: Udávání a účtenková loterie, hloupá komedie

Udávání a účtenková loterie, hloupá komedie

Podnikatel.cz: Chtějte údaje k dani z nemovitostí do mailu

Chtějte údaje k dani z nemovitostí do mailu

Měšec.cz: Kdy vám stát dá na stěhování 50 000 Kč?

Kdy vám stát dá na stěhování 50 000 Kč?

DigiZone.cz: Rádio Šlágr má licenci pro digi vysílání

Rádio Šlágr má licenci pro digi vysílání

Vitalia.cz: Když přijdete o oko, přijdete na rok o řidičák

Když přijdete o oko, přijdete na rok o řidičák

Lupa.cz: Co se dá měřit přes Internet věcí

Co se dá měřit přes Internet věcí

Podnikatel.cz: Snížení DPH na 15 % se netýká všech

Snížení DPH na 15 % se netýká všech

Vitalia.cz: Paštiky plné masa ho zatím neuživí

Paštiky plné masa ho zatím neuživí

Měšec.cz: Jak levně odeslat balík přímo z domu?

Jak levně odeslat balík přímo z domu?

Měšec.cz: Air Bank zruší TOP3 garanci a zdražuje kurzy

Air Bank zruší TOP3 garanci a zdražuje kurzy

120na80.cz: Co všechno ovlivňuje ženskou plodnost?

Co všechno ovlivňuje ženskou plodnost?

Měšec.cz: U levneELEKTRO.cz už reklamaci nevyřídíte

U levneELEKTRO.cz už reklamaci nevyřídíte

Lupa.cz: Insolvenční řízení kvůli cookies? Vítejte v ČR

Insolvenční řízení kvůli cookies? Vítejte v ČR