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

Ivona Spurná 8. 6. 2016

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.

widgety

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?
Vitalia.cz: 5 pravidel proti infekci močových cest

5 pravidel proti infekci močových cest

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

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

Měšec.cz: TEST: Vyzkoušeli jsme pražské taxikáře

TEST: Vyzkoušeli jsme pražské taxikáře

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

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

Lupa.cz: Jak levné procesory změnily svět?

Jak levné procesory změnily svět?

Root.cz: Hořící telefon Samsung Note 7 zapálil auto

Hořící telefon Samsung Note 7 zapálil auto

DigiZone.cz: Sat novinky: NASA Ultra HD (4K)

Sat novinky: NASA Ultra HD (4K)

Podnikatel.cz: Byla finanční manažerka, teď cvičí jógu

Byla finanční manažerka, teď cvičí jógu

DigiZone.cz: Nova opět stahuje „milionáře“

Nova opět stahuje „milionáře“

Vitalia.cz: Test dětských svačinek: Tyhle ne!

Test dětských svačinek: Tyhle ne!

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

Cimrman má hry na YouTube i vlastní doodle

DigiZone.cz: Technisat připravuje trojici DAB

Technisat připravuje trojici DAB

Vitalia.cz: dTest odhalil ten nejlepší kečup

dTest odhalil ten nejlepší kečup

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

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

Vitalia.cz: Tesco nabízí desítky tun jídla zdarma

Tesco nabízí desítky tun jídla zdarma

Podnikatel.cz: Rohlik.cz testoval roboty pro rozvážku

Rohlik.cz testoval roboty pro rozvážku

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

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

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

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

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

Nejsilnější alergeny jsou pryč

Vitalia.cz: Tahák, jak vyzrát nad zápachem z úst

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