DIY, kot pravi Wikipedia, je že dolgo subkultura. V tem članku želim govoriti o svojem DIY projektu majhnega brezžičnega senzorja na več dotikov in to bo moj majhen prispevek k tej subkulturi.
Zgodba tega projekta se je začela s telesom, sliši se neumno, ampak tako se je ta projekt začel. Ohišje je bilo kupljeno na spletni strani Aliexpress, treba je opozoriti, da je kakovost plastičnega ulitka tega kovčka odlična. Po kratkem dopisovanju s prodajalcem je bila risba poslana po pošti in projekt se je začel.
Sama risba je bila zelo slabo izmerjena in polovico meritev za robove, izreze in tehnološke luknje bodočega tiskanega vezja je bilo treba narediti s čeljusti. Po prejemu vseh notranjih dimenzij ohišja je postalo jasno, da bo treba radijski čip "speljati" direktno na tiskano vezje, saj je višina od vrha tiskanega vezja do notranje površine ohišja 1.8 mm, najmanjša višina končnega povprečnega radijskega modula pa je običajno 2 mm (brez zaslona).
Za senzor je bil izbran nRF52 SoC v ohišju QFN48. V tem primeru v seriji nRF52 ima Nordic tri možnosti: nRF52810, nRF52811(novo), nRF52832. Parametri čipa: 64 MHz Cortex-M4, 2.4 GHz sprejemnik, 512/256 KB Flash, 64/32 KB RAM za nRF52832 in 192 KB Flash, 24 KB RAM za nRF52810, nRF52811, čipi z več protokoli, podpora Bluetooth Low Energy, Bluetooth mesh, ESB, ANT in nRF52811 ima poleg naštetega tudi Zigbee in Thread ter Bluetooth Direction Finding.
Odločil sem se, da bom sam senzor naredil multisenzornega, da ga bo mogoče uporabljati za različne naloge. Zaradi tega je morala biti postavitev čipa čim bolj kompaktna, pri čemer je treba upoštevati dejstvo, da minimalne dimenzije komponent ne smejo biti manjše od 0603, da bi lahko napravo spajkali ročno. Po namestitvi čipa na ploščo sem začel z izbiro senzorjev. Glavne stvari, na katere sem se osredotočil pri izbiri, so bile dimenzije ohišja senzorja in možnost spajkanja senzorja doma z minimalnim naborom opreme (spajkalnik in sušilec za lase).
Za senzor so bili izbrani naslednji senzorji: SHT20, SHt21, Si7020, Si7021, HTU21D (senzor temperature in vlage), vsi ti senzorji imajo enako ohišje in enake pine, tudi HDC2080 (senzor temperature in vlage) ima podobno ohišje kot pred navedenim, vendar ima dodaten prekinitveni izhod, energetsko učinkovitejši, BME280 (senzor temperature, vlažnosti in tlaka), LMT01 (temperaturni senzor), TMP117 (visoko natančen temperaturni senzor), visoka energetska učinkovitost, prekinitveni izhod, nastavitev zgornje in spodnje temperature meje, LIS2DW12 (merilnik pospeška) visoka energetska učinkovitost, eden najboljših v svojem segmentu ali LIS2DH12.
Tudi v prvi različici senzorja je bilo na seznamu reed stikalo, ki pa je bilo v kasnejših revizijah izločeno, saj 1.6 cm reed stikalo s stekleno žarnico ni imelo dovolj prostora in sem razdelil par takih senzorjev pri vgradnji izdelane plošče v ohišje, tudi zaradi kvadrata Tip ohišja in njegova majhna višina nista ravno ustrezala napravi kot magnetnemu senzorju za odpiranje in zapiranje.
Poleg senzorjev sta na senzorju še 2 LED diodi, ena od njih je RGB, ki se nahaja na spodnji strani senzorja. Dva gumba SMD, eden povezan za ponastavitev, drugi "uporabnik" za izvajanje nekaterih scenarijev delovanja senzorja. Telo senzorja je sestavljeno iz treh delov: glavnega ohišja, notranjega vložka z luknjo, ki drži baterijo in je na glavno ohišje pritrjeno s štirimi vijaki, ter spodnjega pokrova, ki se zaskoči v luknje na notranjem vložku. Na voljo so tudi 4 analogni zatiči, 2 digitalna zatiča in še dva zatiča, ki sta lahko NFC antena ali digitalni zatiči, vrata SWD.
RGB LED in gumbi so nameščeni na tiskanem vezju tako, da so zlahka dostopni, ko odstranite spodnji pokrov skozi luknje v notranjem vložku, ki so oblikovane tako, da se zadnji pokrov zaskoči na svoje mesto.
Naprava je šla skozi dve reviziji, tudi prej je bil namesto senzorja TMP117 nameščen svetlobni senzor MAX44009, ki ga je kasneje zamenjal temperaturni senzor, oba senzorja imata enako ohišje, vendar različne zatiče na nogah, lahko zaman, da je bil zamenjan, morda je vredno vrniti.
Zdaj imam doma 4 take naprave, od katerih sta dve senzorji temperature in vlage s senzorji Si7021 (eden na nRF52832, drugi na nRF52811), eden je senzor za udarce, implementiran na merilniku pospeška LIS2DW12 (nRF52810) in senzor za nadzor temperature na senzorju LMT01 (nRF52810).
Brezžični senzor deluje na baterijo CR2032, poraba v stanju mirovanja je 1.8 μA za nRF52810, nRF52811 in 3.7 μA za nRF52832. Poraba v načinu prenosa podatkov 8mA.
Menim, da opis uporabljenega protokola in razvoj programske opreme za ta senzor za različne scenarije uporabe presega obseg tega članka.
Preizkus delovanja senzorja s sistemom pametnega doma si lahko ogledate v spodnjem kratkem videu.
Projekt tega senzorja je odprt, vsa gradiva o projektu lahko dobite na moji strani
Če vas zanima vse v zvezi z DIY, ste DIY razvijalec ali želite samo začeti, vas zanima uporaba DIY naprav, vabim vse zainteresirane
Vsem, ki želite izdelovati naprave, začeti graditi avtomatizacijo za svoj dom, predlagam, da se seznanite s preprostim za učenje protokolom Mysensors - telegram chat
In tiste, ki iščete dokaj zrele rešitve za avtomatizacijo doma, vas vabim na telegram klepet
Hvala za pozornost, vse najboljše!
Vir: www.habr.com