Kaip Arduino prijunkite infraraudonųjų spindulių jutiklį. Arduino: infraraudonųjų spindulių judesio jutiklis, šventė
PIR (pasyvūs infraraudonųjų spindulių jutikliai) jutikliai leidžia jums sugauti judėjimą.
Labai dažnai naudojami signalizacijos sistemose. Šie jutikliai yra nedideli, nebrangūs, vartoti mažai energijos, yra lengvai valdoma, praktiškai netaikoma dėvėjimui. Be PIR, tokie jutikliai vadinami piroelektriniais ir infraraudonųjų spindulių judesio jutikliais.
PyloWelectric judesio jutiklis - bendroji informacija
PIR judesio jutikliai iš esmės susideda iš piroelektrinio jutimo elemento (cilindrinės dalies su stačiakampiu kristalais centre), kuris sugauna infraraudonųjų spindulių lygį. Viskas aplink skleidžia nedidelį spinduliuotės lygį. Kuo didesnė temperatūra, tuo didesnė spinduliuotės lygis. Jutiklis iš tikrųjų padalintas į dvi dalis. Taip yra dėl to, kad nesame svarbūs spinduliuotės lygiui, bet tiesiogiai judesio buvimas savo jautrumo zonoje. Dvi jutiklio dalys yra nustatytos taip, kad, jei pusė užfiksuoja didesnį spinduliuotės lygį nei kitas, išvesties signalas sukurs aukšto arba mažo vertę.
Pats modulis, ant kurio įdiegtas judesio jutiklis, taip pat susideda iš papildomų elektrinių juostų: saugikliai, rezistoriai ir kondensatoriai. Labiausiai nebrangūs PIR jutikliai Naudokite nebrangius BISS0001 lustai ("Mikro galia PIR judesio jutiklis IC"). Šis lustas suvokia išorinį spinduliuotės šaltinį ir atlieka minimalų signalų apdorojimą, kad jį būtų galima konvertuoti nuo analoginio skaitmeninio vaizdo.
Vienas iš pagrindinių modelių šio klasės pioroelektrinių jutiklių atrodo taip:
Naujesni PIR jutiklio modeliai turi papildomų išėjimų papildomiems nustatymams ir įdiegtoms signalo, mitybos ir žemės jungtims:
PIR jutikliai puikiai tinka projektams, kuriuose būtina nustatyti asmens buvimą ar nebuvimą tam tikroje darbo erdvėje. Be to, yra aukščiau išvardytų jutiklių privalumas, jie turi didelę jautrumo zoną. Tačiau atkreipkite dėmesį, kad piroelektriniai jutikliai nesuteiks jums informacijos apie tai, kiek žmonių aplink ir kaip arti jie yra jutikliui. Be to, jie gali dirbti su gyvūnais.
Bendra techninė informacija
Šios specifikacijos yra susijusios su "Adafruit" parduotuvėje parduodamų PIR jutiklių. Panašių jutiklių veikimo principas, nors specifikacijos gali skirtis. Taigi prieš dirbdami su PIR jutikliu, perskaitykite savo duomenų bazę.
- Forma: stačiakampis;
- Kaina: apie 10,00 dolerius "Adafruit" parduotuvėje;
- Gabenimas: skaitmeninis didelis impulsas (3 V) su judėjimu ir skaitmeniniu mažu signalu, kai nėra judesių. Impulso ilgis priklauso nuo paties modulio ir skirtingų daviklių indų ir kondensatorių;
- Jautrumo diapazonas: iki 6 metrų. Peržiūros kampas 110 ° x 70 °;
- Maitinimas: 3B - 9V, bet geriausias variantas yra 5 voltai;
>Norėdami užsisakyti su "AliExpress":
Pioroelektrinių (PIR) judesio jutiklių veikimo principas
PIR jutikliai nėra tokie paprasti, kaip atrodo iš pirmo žvilgsnio. Pagrindinė priežastis yra daug kintamųjų, turinčių įtakos jo įvesties ir išvesties signalams. Norėdami paaiškinti daviklių darbo šventės pagrindus, mes naudojame toliau pateiktą brėžinį.
Poroelektrinis judesio jutiklis susideda iš dviejų pagrindinių dalių. Kiekviena dalis apima specialią medžiagą jautrioms infraraudonųjų spinduliams. Šiuo atveju lęšiai nėra ypač paveikti jutiklio veikimą, kad matome du viso modulio jautrumo sekcijas. Kai jutiklis yra poilsio, abu jutikliai nustato tą patį spinduliuotės kiekį. Pavyzdžiui, jis gali būti kambario ar aplinkos spinduliuotė gatvėje. Kai šiltas kraujo objektas (asmuo ar gyvūnas) eina, jis kerta pirmojo jutiklio jautrumo zoną, dėl kurių daviklio modulyje susidaro dvi skirtingos spinduliuotės vertės. Kai asmuo palieka pirmojo jutiklio jautrumo zoną, vertės yra suderintos. Tai yra dviejų jutiklių liudijimo pokyčiai yra įrašomi ir generuojami aukštos arba mažos impulsos.
PIR jutiklio dizainas
Jutikliai SYS jautrūs elementai yra sumontuoti metaliniame hermetime, kuris apsaugo nuo išorinio triukšmo, temperatūros lašų ir drėgmės. Centro stačiakampis yra pagamintas iš medžiagos, perduodančios infraraudonųjų spindulių spinduliuotę (paprastai tai yra medžiaga, pagrįsta silikonu). Du jautrūs elementai yra sumontuoti už šios plokštės.
Piešimas iš Duomenų bazės Murata:
Duomenų bazės brėžinys RE200B:
Paveikslas nuo duomenų lapo RE200B rodo du jautrius elementus:
Pirmiau pateiktame paveikslėlyje rodoma vidinė jungties schema.
Lęšiai
Infraraudonųjų spindulių judesio jutikliai yra beveik vienodi jų struktūroje. Pagrindiniai skirtumai yra jautrumas, kuris priklauso nuo jautrių elementų kokybės. Tuo pačiu metu optika atlieka svarbų vaidmenį.
Paveikslėlyje pateikiamas plastikinio objektyvo pavyzdys. Tai reiškia, kad jutiklio jautrumo diapazonas yra du stačiakampiai. Tačiau, kaip taisyklė, turime pateikti didelius žiūrėjimo kampus. Norėdami tai padaryti, galite naudoti objektyvus, panašius į tuos, kurie naudojami kamerose. Tokiu atveju judesio jutiklio objektyvas turi būti mažas, plonas ir pagamintas iš plastiko, nors jis prideda triukšmą į matavimus. Todėl daugelyje PIR jutiklių naudojamos fresnels lęšiai (piešimas iš jutiklių žurnalo):
Fresnels lęšiai koncentruoja spinduliuotę žymiai plečiasi jautrumo diapazone (figūra su bhlens.com)
Figūra nuo Cypress Appnote 2105:
Dabar mes turime daug didesnį jautrumo diapazoną. Tuo pačiu metu mes prisimename, kad turime du jautrių elementų ir mums reikia ne tiek daug didelių stačiakampių kaip daug mažų jautrumo zonų. Dėl to objektyvas yra padalintas į kelis skyrius, kurių kiekvienas yra atskiras fresnelio objektyvas.
Žemiau esančiame paveikslėlyje galite matyti atskirus sekcijas - fresnels lęšius:
Dėl šio makro, atkreipkite dėmesį, kad atskirų lęšių tekstūra yra kitokia:
Rezultatas yra visas jautrių svetainių, kurios bendrauja tarpusavyje, rinkinys.
Duomenų data brėžiniai NL11NH:
Žemiau yra dar vienas brėžinys. Ryškesnis, bet mažiau informatyvus. Be to, atkreipkite dėmesį, kad dauguma jutiklių turi 110 laipsnių kampo vaizdą, o ne 90.
Figūra iš IR-TEC:
PIR judesio jutiklio prijungimas
Dauguma modulių su infraraudonųjų spindulių judesio jutikliais turi tris jungtį ant galo. Pinut gali skirtis, todėl prieš prijungdami, patikrinkite jį! Paprastai šalia jungties yra atitinkančių užrašų. Viena jungtis eina į žemę, antroji suteikia mums signalą, kuris mus domina nuo jutiklių, trečiojo - Žemės. Tiekimo įtampa paprastai yra 3-5 voltai, nuolatinė srovė. Tačiau kartais yra jutikliai, kurių įtampa yra 12 voltų. Kai kuriuose dideliuose jutikliuose nėra atskiro kaiščio signalo. Vietoj to, relė naudojama su žeme, galia ir dviem jungikliais.
Jūsų prietaiso prototipui naudojant infraraudonųjų spindulių judesio jutiklį, patogu naudoti grandinės plokštę, nes dauguma šių modulių turi tris jungtį, atstumas tarp jų apskaičiuojamas pagal sluoksnio skyles.
Mūsų atveju raudonasis kabelis atitinka maitinimą, juodą - žemę ir geltoną signalą. Jei neteisingai prijungiate kabelius, jutiklis nepavyks, bet jis neveiks.
Bandymo PIR judesio jutiklis
Surinkite schemą pagal aukščiau pateiktą modelį. Kaip rezultatas, kai PIR jutiklis aptinka judėjimą, aukštas signalas yra generuojamas į išėjimo, kuris atitinka 3,3 V ir šviesos diodas bus apšviesti.
Tuo pačiu metu atkreipkite dėmesį, kad piroelektrinis jutiklis turi "stabilizuoti". Įdėkite baterijas ir palaukite 30-60 sekundžių. Per šį laiką LED gali mirksėti. Palaukite, kol mirksėjimas bus baigtas ir galite pradėti banguoti savo rankas ir vaikščioti aplink jutiklį, žiūrėdami LED užsidega!
Jutiklio paleidimo konfigūravimas
Pioroelektrinis judesio jutiklis turi keletą tinktūrų. Pirmiausia pažvelgsime į "restart".
Prijungus, pažvelkite į galinį modulio paviršių. Jungtys turi būti sumontuotos viršutiniame kairiajame kampe L, kaip parodyta žemiau esančiame paveikslėlyje.
Atkreipkite dėmesį, kad su tokiu prijungimo parinktimi šviesos diodas nuolat šviečia ir įsijungia įjungus, kai judate šalia jo. Tai yra galimybė "be paleidimo" (nevykdymo).
Dabar įdiekite jungtį į H. Po bandymo paaiškėja, kad LED yra nuolat, jei kas nors juda per jautrumo zonoje jutiklio. Tai yra "paleidimo" režimas.
Brėžinys yra mažesnis nuo BISS0001 jutiklio duomenų lapo:
Daugeliu atvejų "Restart" režimas (jungtis H CC pozicijoje rodoma žemiau esančiame paveikslėlyje).
Konfigūruoti jautrumą
Daugelyje infraraudonųjų spindulių judesių jutiklių, įskaitant "Adafruit", įdiegtas mažas potenciometras, kad sukonfigūruotų jautrumą. Pottoniometro sukimas pagal laikrodžio rodyklę prideda jautrumą jutikliui.
Pulso ir laiko keitimas tarp impulsų
Kai mes manome, PIR jutikliai, yra du intervalai "vėlavimo" laiko. Pirmas kartų segmentas ISTX: kiek laiko, kai jis yra aptinkamas po judėjimo. Daugelyje piroelektrinių modulių šį kartą reguliuoja įmontuotas potenciometras. Antras laiko laikas yra ti: kiek laiko šviesos diodas nebus garantuotas, kai judėjimas nebuvo. Pakeiskite šį parametrą nėra taip paprasta, nes jums gali prireikti litavimo geležies.
Pažvelkime į "DataTheet Biss":
"Adafrutų jutikliuose yra potenciometras, pažymėtas kaip laikas. Tai yra kintamasis rezistorius su atsparumu 1 mega, kuri yra pridėta prie rezistorių 10 kilomoje. C6 kondensatorius turi 0,01 mikrofrato talpą, todėl:
TX \u003d 24576 x (10 COM + RTIpas) x 0,01 μf
Kai rutulinis potenciometras "nulis" - visiškai pasukta prieš laikrodžio rodyklė - padėtis (0 mega):
TX \u003d 24576 x (10 com) x 0,01 μF \u003d 2,5 sekundės (apytiksliai) Kai rutulinis potenciometras yra visiškai pasuktas pagal laikrodžio rodyklę (1MOG):
Tx \u003d 24576 x (1010 com) x 0,01 μF \u003d 250 sekundžių (maždaug)
Vidurinėje padėtyje rime laikas bus apie 120 sekundžių (dvi minutės). Tai yra, jei norite stebėti objekto judėjimą su dažnio laikais per minutę, pasukite potenciometrą iki 1/4 pasukimo.
Senesniems / kitiems PIR jutiklių modeliams
Jei jūsų jutiklyje nėra potenciometrų, galite konfigūruoti rezistoriams.
Esame suinteresuoti rezistoriais R10 ir R9. Deja, kinai gali padaryti daug. Įskaitant supainiotus užrašus. Pirmiau pateiktas paveikslas rodo pavyzdį, kuriuo galima matyti, kad R9 yra supainiotas su R17. Važiuokite su duomenų baze. R10 yra prijungtas prie 3 kaiščių, R9 - iki 7 kaiščių.
Pavyzdžiui:
TX yra \u003d 24576 * R10 * C6 \u003d ~ 1,2 sekundės
R10 \u003d 4.7K ir C6 \u003d 10 Nanofarad
Ti \u003d 24 * r9 * c7 \u003d ~ 1,2 sekundės
R9 \u003d 470K ir C7 \u003d 0,1 mikrofradai
Galite keisti delsimo laiką, nustatydami įvairius rezervus ir kondensatorius.
PIR judesio jutiklio prijungimas prie Arduino
Mes parašyti programą, skirtą skaityti vertes iš piroelektrinio judesio jutiklio. Prijunkite PIR jutiklį į mikrovaldiklį yra paprasta. Jutiklis rodo skaitmeninį signalą, kad viskas, ko jums reikia, yra perskaityti "Arduino High" ("Rbnov") arba žemą (be judėjimo).
Nepamirškite įdiegti jungties į H!
Patiekite 5 voltus į jutiklį. Žemė Sozhinea su žeme. Po to prijunkite signalo kaištį nuo jutiklio su skaitmeniniu kaiščiu ant Arduino. Šiame pavyzdyje naudojamas PIN 2.
Programa yra paprasta. Iš esmės jis stebi Pina būklę 2. Būtent: koks yra signalas ant jo: mažas arba didelis. Be to, pranešimas pateikiamas, kai PINA keičiasi: yra judėjimas arba judėjimas.
* PIR judesio jutiklio patikrinimas
int LEDPIN \u003d 13; // inicijuoti PIN kodą LED
int intpin \u003d 2; // inicijuoti PIN kodą, kad gautumėte signalą iš pelroelektrinio judesio jutiklio
int pirsate \u003d mažas; // pradėti programos darbą, darant prielaidą, kad nėra judėjimo
int val \u003d 0; // kintama, skirta skaityti Pina būklę
pinmode (LEDPIN, išvesties); // deklaruoti LED kaip produkcija
pinmode (inpinPin, įvestis); // deklaruoti jutiklį kaip įvestį
Serijos.Begin (9600);
val \u003d DigitalRead (InpinPin); // Perskaitykite vertę nuo jutiklio
jei (val \u003d\u003d aukštas) (// tikrinama, ar didelės skaitymo vertė
skaitmeninis rašymas (Leppin, aukštas); // Įjunkite LED
jei (pirsate \u003d\u003d mažas) (
// mes tiesiog įjungėme
Serijos.Println ("judesio aptikta!");
pirsate \u003d Aukštas;
skaitmeninis rašymas (LEDPIN, žemas); // Išjunkite LED
jei (pirsate \u003d\u003d aukštas) (
// mes ką tik išjungėme
Serijos.Println ("judėjimas baigėsi!");
// mes rodomi serijos monitoriaus kaita, o ne valstybė
Nepamirškite, kad mikrokontroller ne visada reikia dirbti su piroelektriniu jutikliu. Kartais galite padaryti su paprastu relais.
PIR (pasyvūs infraraudonųjų spindulių jutikliai) jutikliai leidžia jums sugauti judėjimą. Labai dažnai naudojami signalizacijos sistemose. Šie jutikliai yra nedideli, nebrangūs, vartoti mažai energijos, yra lengvai valdoma, praktiškai netaikoma dėvėjimui. Be PIR, tokie jutikliai vadinami piroelektriniais ir infraraudonųjų spindulių judesio jutikliais.
Buvo reikalinga pirkti pora jutiklių buitiniam naudojimui savo amatininkų, pagrįstų LED apšvietimu.
Kadangi aš turiu palyginti didelį vartojimo srovę, o maitinimo įtampa yra 12 V, kompaktiški piroelektrinės infraraudonųjų spindulių judesio jutikliai buvo įsigyti būsto.
Paketas:
Aš užsakiau du jutiklius su gebėjimu reguliuoti šviesai jautrumą:
Jutikliai palaiko galią nuo 12 iki 24 voltų. Jie jau sukėlė standartinius laidus, kurių ilgis yra apie 30 cm su kištukais, skirtais įvesties ir išvesties, su centriniu kontaktu 2,1 mm, ir tai yra didelis pliusas. Nereikia pakankamai gauti pakankamai, tiesiog prijunkite maitinimą ir naudojimą:
Patys jutikliai yra gana kompaktiški. Išvaizda:
Matmenys:
Norėdami patekti į valdybą ir koregavimus, reikia valdyti bylą. Užsuktuvų užpakalinis dangtelis pridedamas prie atsuktuvo:
Valdyba atrodo taip:
Radau šio prietaiso schemą, nominalai gali skirtis, bet apskritai, kad suprastų darbo esmę, tai tiesa:
Čia matome įtampos stabilizatorių mikroschemos mityboje:
Beje, čia yra šio elemento duomenų lapas, galima matyti, kad kitoks ženklinimas reiškia skirtingą stabilią įtampą. Tačiau pagrindinis dalykas yra tai, kad jis palaiko įvesties įtampą į 24 voltus, todėl jis neturėtų būti viršytas.
Be to, pagal schemą yra lauko tranzistorius į išėjimą, kuris yra esminis maitinimo grandinės raktas:
Duomenų sąraše maksimalus ilgas srovė nurodyta normalioje kambario temperatūroje 15 a, bet kadangi mes neturime tranzistoriaus aušinimo, mes ribojame išėjimo galia.
Prietaiso širdis yra BISS0001 lustas. Šis lustas suvokia išorinį spinduliuotės šaltinį ir atlieka minimalų signalų apdorojimą, kad jis būtų konvertuojamas nuo analoginio skaitmeninio vaizdo:
PIR judesio jutiklis, iš tiesų, susideda iš piroelektrinio jutimo elemento (cilindro formos su stačiakampiu kristalais centre), kuris sugauna infraraudonųjų spindulių spinduliuotę. Jutiklis iš tikrųjų padalintas į dvi dalis. Taip yra dėl to, kad nesame svarbūs spinduliuotės lygiui, bet tiesiogiai judesio buvimas savo jautrumo zonoje. Dvi jutiklio dalys yra nustatytos taip, kad, jei pusė užfiksuoja didesnį spinduliuotės lygį nei kitas, išvesties signalas sukurs aukšto arba mažo vertę.
Dabar tiesiai į koregavimus. Pritaikytas prietaisas, atitinkamai išmeta, kas ir kur pasukti:
Laikas koreguojamas nuo 1 sekundės iki 500 sekundžių. Su visiškai susukta slankikliu, šviesa tiesiog mirksi.
Kalbant apie jutiklio įtraukties ribą, eksperimentinis būdas atskleidė, kad ši įtampa nuo 11.5 voltų, jei žemiau, jutiklis tiesiog neįsijungia:
Pagal schemą aišku, kad išėjimo įtampa iš jutiklio yra mažesnė arba lygi įvesties. Aš įdėjau 12v. Yra klaida, susijusi su netiksliu maitinimo šaltiniu, todėl jutiklio suvartojimas yra žinoma:
Laukimo režime jutiklis sunaudoja 84MA, o išėjimo įtampa yra 170 mV.
Sąžiningai, aš pasakysiu, kad pritaikyti jutiklį yra labai nepatogu su pašalinta lenta, todėl aš padariau skyles ant nugaros dangos ir tiek geriau:
Surinko schemą, viskas įsteigta:
Patikrinta:
Jutiklis dirba dvi dienas, antrasis aš įdėjau ausinių stendo apšvietimą, ir man patinka, kad, skirtingai nei ankstesnis, kuris dirbo nuo 220 V, buvo daugiau ir spustelėjo relę, tai yra labiau kompaktiškas ir, Žinoma, Beshume.
Didžiausias diapazonas nebuvo įvertintas, bet bute su 3 metrais jis yra tiksliai suaktyvintas
Džiaugiuosi pirkimu - Taip. Pilnas, aukštos kokybės galutinis įrenginys.
Kas tau patiko:
+ Visiškai pritaikomas režimas
+ Minimalus savęs vartojimas
+ Gamybos ir kompaktiškumo kokybė
+ Išvalykite paleidiklį be praleidimų
+. Laidų pasiskirstymas su lizdais
Tai, kas nepatiko:
- tiesioginės prieigos prie nustatymų trūkumas be dangos (išspręstas)
- tvirtinimo detalės yra labai mažos (tačiau geriau išspręsti 3M tipo juostos tipą)
Baltojo dangtelio dangtelis yra išjudintas iš juodo dėklo, bet parinktyje be šviesos jutiklio jis yra juodas.
Tai viskas.
PIR jutiklių ir tipinės prietaiso elektros schemos veikimo principas. Kiekvienas tampa šiluminės spinduliuotės šaltiniu. Šios spinduliuotės bangos ilgis priklauso nuo temperatūros ir yra infraraudonųjų spindulių spektro dalyje. Ši spinduliuotė stebima specialiais jutikliais, kurie vadina PIR jutiklius.
PIR yra sutrumpintas "Pasyvus infraraudonųjų spindulių" jutikliai. Pasyvus - nes jutikliai nėra skleidžiami, bet tik suvokia spinduliuotę su bangos ilgiu nuo 7 iki 14 mikronų. PIR jutiklis turi jautrią elementą, kuris reaguoja į šiluminės spinduliuotės pokyčius. Jei jis išlieka pastovus - elektrinis signalas nėra sukurtas. Norint, kad jutiklis reaguoja į judėjimą, naudojamos fresnels lęšiai su keliomis fokusavimo svetainėmis, kurios padalina bendrą šilumos vaizdą į aktyvias ir pasyvias zonas, esančias tikrintuvo tvarka. Asmuo, esantis jutiklio srityje, visiškai arba iš dalies užima kelias aktyvias zonas. Todėl net ir su minimaliu judesiu, judant iš kai kurių aktyvių zonų į kitą, o tai sukelia jutiklio paleidimą. Tačiau foninis šiluminis vaizdas keičiasi labai lėtai ir tolygiai, todėl jutiklis nereaguoja į jį. Didelis aktyvių ir pasyviųjų zonų tankis leidžia jutiklį patikimai nustatyti asmens buvimą mažiausiu judėjimu.
Ši schema yra pagrįsta HT7610A lustu, kuris yra tiesiog skirtas naudoti automatiniuose PIR lempose ar signalizacijose. Jis gali dirbti 3 laidiniame signalo perdavimo konfigūracijoje. Šis projektas naudoja relę, o ne thyristor, kaip dažnai padaryta, kad prijungtų bet kokią apkrovą. Viduje yra operacinis stiprintuvas, lyginamasis, laikmatis, perėjimo detektorius per nulinį, valdymo grandinę, įtampos kontrolę, generatorių ir generatoriaus sinchronizavimo rezultatus.
PIR jutiklis aptinka infraraudonųjų spindulių pakeistą signalą, kurį sukelia žmogaus kūno judėjimas ir konvertuoja jį į įtampos svyravimus. Schemoje nereikia mažinančio transformatoriaus ir jis gali veikti tiesiai nuo 220V. Balasto kondensatorius C7 turėtų būti 0,33UF / 275V ir geriau 400V.
Savybės jutiklio schema
- Schemos veikimo įtampa: 5V-12V.
- Įstatyta pakrovimo srovė 80 mA, kai įdėta relė.
- Laukimo režime: 100 μA
- ON / AUTO / OFF režimai.
- AutosBross, jei signalas dingsta per 3 sekundes.
- Relės išėjimas prijungti apkrovą.
- LDR fotoresininkas aptikti dienos / nakties režimą.
- J1 megztinis režimui nustatyti.
- PR1 rezistorius nustato jutiklio jautrumą.
- PR2 rezistorius nustato išvesties būsenos signalo išvesties trukmę.
Jutiklio PIR schema siūlo tris veikimo būdus (ON, AUTO, OFF), kurį galima įdiegti rankiniu būdu Jumper J1. CDS sistema yra Schmitt CMOS trigeris, kuris naudojamas atskirti dieną ir naktį.
Principasdarbas. \\ T PIR (pasyvi infras raudona) -jutiklis
Bet koks objektas, turintis tam tikrą temperatūrą, tampa elektromagnetinės (šiluminės) spinduliuotės šaltiniu, įskaitant žmogaus kūną. Šios spinduliuotės bangos ilgis priklauso nuo temperatūros ir yra infraraudonųjų spindulių spektro dalyje. Ši spinduliuotė yra nematoma į akis ir sugauna tik jutiklius. Jie taip pat vadinami PIR jutikliais.
Tai yra santrumpa iš žodžių "pasyvaus infraraudonųjų spindulių" arba "pasyvūs infraraudonųjų spindulių jutikliai. Pasyvus - nes jutikliai nėra skleidžiami, bet tik suvokia spinduliuotę, kurių bangos ilgis yra nuo 7 iki 14 μm.
Žmogus spinduliuoja šiltą. Jo šiluminis vaizdas infraraudonųjų spindulių spinduliuose rodo temperatūros pasiskirstymą ant kūno paviršiaus. Daugiau šildomų daiktų atrodo lengvesnis, vėlesnis - tamsesnis, nes Išmeta mažiau šilumos.
PIR jutiklis turi jautrią elementą, kuris reaguoja į šiluminės spinduliuotės pokyčius. Jei jis išlieka pastovus - elektrinis signalas nėra sukurtas.
Kad jutiklis reaguoja į judėjimą, naudojami specialūs lęšiai (fresnels lęšiai) su keliomis fokusavimo vietomis, kurios padalina visišką šilumos vaizdą į aktyvias ir pasyvias zonas, esančias tikrintuvo užsakyme. Asmuo, esantis jutiklio srityje, visiškai arba iš dalies užima kelias aktyvias zonas.
Todėl net ir su minimaliu judesiu, judant iš kai kurių aktyvių zonų į kitą, o tai sukelia jutiklio paleidimą. Fono šiluminė nuotrauka paprastai keičiasi labai lėtai ir tolygiai. Jutiklis neatsako į jį. Didelis aktyvių ir pasyviųjų zonų tankis leidžia jutiklį patikimai nustatyti asmens buvimą netgi mažiausiu judesiu.
Šiandien mes analizuosime projektą, jungiančią PIR jutiklį (judėjimą) į "Arduino" ir organizuokite automatinį siuntimo el. Laišką, kai jutiklis įjungiamas. Arduino yra šio projekto širdis - skaito IR jutiklio rodmenis, ir kai aptinkamas judėjimas, suteikia kompiuterį per USB prievadą, kad išsiųstų laišką. Signalo apdorojimas patekimas į kompiuterį yra įgyvendinama naudojant Python programą.
Modelio montavimo dalių sąrašas
Šioje pamokoje aprašyto projekto surinkimui reikės tokių detalių:
- Arduino uno ar analoginis (daugiau apie tai, kaip pasirinkti Arduino);
- PIR jutiklis (tinkamas $ 2);
- bradaarda (galite įsigyti už $ 2,4);
- wires tėtis-tėtis (galite nusipirkti tokį ryšį su didele marža).
Jums taip pat reikės kompiuterio su interneto ryšiu, mes išsiųsime el. Laišką! Kompiuterio vaidmuo šioje pamokoje gali atlikti.
PIR jutiklio ryšio schema į Arduino
"Arduino" reikalauja tik PIR jutiklio šiame projekte, todėl laidai iš jutiklio gali būti tiesiogiai prijungti prie Arduino. Bet nes Tokiu atveju laidai turi šiek tiek patogiau naudoti schemą su "Botgode":
Arduino SKATCH.
"Arduino" išsiųs pranešimą apie USB serijos ryšį, kai aptinkamas judėjimas. Bet jei siunčiate el. Laišką kiekvieną kartą, kai jutiklis yra įjungtas, galite gauti didžiulį skaičių raidžių. Todėl, jei jis praėjo per mažai laiko nuo praeities signalo - mes atsiųsime kitą pranešimą.
int pirpin \u003d 7;
INT MINSECSBETWEENBAILSS \u003d 60; // 1 minutė.
Ilgas lastsend \u003d -minsecsbetweenens * 1000;
Void Setup ()
{
PINMODE (PIRPIN, INPUT);
Serijos.Begin (9600);
}
Void kilpa ()
{
Ilgai \u003d milis ();
Jei (skaitmeninis (pirpin) \u003d\u003d aukštas)
{
Jei (dabar\u003e lastsend + minsecsbetweenempails * 1000))
{
Serijos.Println ("judėjimas"); Lastsend \u003d dabar;
}
KITAS.
{
Serijos.Println ("per anksti"); )
}
Vėlavimas (500);
}
"Minsecsbetewearls" kintamasis gali būti pakeistas į kitą pagrįstą vertę. Pavyzdžiui, jis yra įdiegtas 60 sekundžių, o raidės nebus išsiųs daugiau nei vieną minutę. Norėdami stebėti, kai paskutinį kartą buvo suteikta Sati el. Pašto komanda, naudojamas "lastsend" kintamasis. Jis inicijuoja neigiamą skaičių lygią milisekundžių, nurodytų "MinesCsBetweenePlanks" kintamąjį skaičių. Tai garantuoja mums PIR jutiklio atsakymo apdorojimą, kai tik veikia Arduino eskizas. Ciklas naudoja milizą () funkciją, kad gautumėte milisekundžių skaičių su Arduino ir palygina su laiku nuo paskutinio jutiklio atsakymo ir atitinkamo siuntimo pranešimo "judėjimas". Jei palyginimas rodo, kad per mažai laiko praeiti nuo praeities jutiklio įjungimo, nepaisant to, kad judėjimas buvo aptiktas, siųsti pranešimą "Per anksti" (per anksti). Prieš rašydami "Python" programą, kad galėtumėte apdoroti signalą iš Arduino į kompiuterį ar aviečių Pi per USB, galite patikrinti "Arduino" programos programą, tiesiog atidarydami serijinį monitorių "Arduino Ide".
Python ir Pyserial diegimas
Jei projektas naudoja kompiuterį su Linux operacine sistema, pvz., Raspberry Pi, Python jau įdiegta. Jei naudojama "Windows" operacinė sistema, reikia įdiegti "Python". Bet kuriuo atveju, jums reikės įdiegti PYSERIAL biblioteką, siekiant užtikrinti bendravimą su Arduino.
"Python" diegimas "Windows"
Norėdami įdiegti "Python" "Windows", atsisiųskite montuotoją su https://www.python.org/downloads/. Naudojant "Python 3", buvo pranešimų apie "Python 3" problemas, todėl mes naudojame Python 2. Įdiegę "Python", atitinkama grupė pasirodys meniu Pradėti. Bet už PYSERIAL įrenginį, jums reikės naudoti Python iš komandų eilutės, todėl pridėkite atitinkamą katalogą į kelio kintamąjį.
Norėdami tai padaryti, jums reikia eiti į "Windows" valdymo skydelį, surasti sistemos ypatybes (sistemos ypatybes). Tada spustelėkite aplinkos variklio užrašą ("Aplinkos kintamieji") ir pasirinkite "Kelias" apatiniame lange sistemos kintamųjų apačioje (sistemos kintamieji). Paspauskite mygtuką Redaguoti, o tada "kintamos vertės" pabaigoje, nenaudojant teksto, pridėti "; C: Python27. " Nepamiršk ";" Po kiekvieno nurodyto aplanko. Norėdami patikrinti, ar kelio kintamasis pakeitė teisingai, įvesite komandų eilutę "Python" komandą. Panašus paveikslėlis turėtų būti rodomas:
PYSERIAL. \\ T
Nepriklausomai nuo naudojamos operacinės sistemos, atsisiųsti .tar.gz diegimo paketas už PYSERIAL 2.6 iš https://pypi.python.org/pypi/pyserial Mes gauname failą, pavadintą PYSERIAL-2.6.TAR.GZ, kai naudojate "Windows", kurią reikia išpakuoti failą į aplanką. Deja, tai nėra paprastas zip failas, todėl gali prireikti atsisiųsti, pavyzdžiui, 7 zip (http://www.7-zip.org/). Kai naudojate kompiuterį su "Linux" operacine sistema, pavyzdžiui, naudojant "Aviečių Pi", turite atidaryti terminalo sesiją, vykdykite komandą "CD" su aplanku, kuriame atsisiunčiama PYSERIAL-2.6.TAR.GZ Jei norite išpakuoti diegimo programą, vykdykite šią komandą:
$ tar -XZF PYSERIAL-2.6.TAR.GZ
Toliau, nepriklausomai nuo operacinės sistemos, naudojamos komandų eilutėje, vykdykite komandą "CD" su PYSERIAL-2.6 aplanku ir vykdykite komandą:
Sudo python setup.py diegimas
Kodas į Python.
Dabar sukurkite programą "Python". Norėdami tai padaryti, nukopijuokite šį kodą į failą, pavadintą "judėjimas.py". "Linux" galite naudoti "Nano" redaktorių "Windows", tikriausiai lengviausia būdas padaryti failą naudojant "Python" tuščiosios ruošimo redaktorių "(galima iš" Python "programos grupės meniu).
Importo laikas.
Importo serijos. \\ T
Importuoti smtplib.
Iki \u003d " [El. Pašto saugoma]"
Gmail_user \u003d " [El. Pašto saugoma]"
Gmail_pass \u003d "PutyourpassPasswordher"
Dalykas \u003d "įsilaužimas !!"
Tekstas \u003d "Jūsų PIR jutiklis aptiktas judėjimas"
Seri \u003d serijos.Serial ("COM4", 9600)
DEF SEND_EBAIL ():
Spausdinti ("siųsti el. Laišką")
Smtppserver \u003d smtplib.smtp ("smtp.gmail.com", 587)
Smtppserver.ehlo () smtppserver.starttls ()
Smtppserver.ehlo smtppserver.login (gmail_user, gmail_pass)
Antraštė \u003d "į:" + iki + "n" + "nuo:" + gmail_user
Antraštė \u003d antraštė + "\\ n" + "Tema:" + dalykas + "\\ n"
Spausdinimo antraštė.
Msg \u003d antraštė + "n" + tekstas + "n" \\ t
SMTPSERVER.SENDMAIL (GMail_USER, į, MSG)
Smtppserver.Uždaryti ()
Tiesa:
Pranešimas \u003d ser.Readline ()
Spausdinti (pranešimas)
Jei pranešimas \u003d\u003d "m":
Siųsti laišką ()
Laikas. (0,5)
Prieš paleisdami "Python" programą, pristatome kai kuriuos pakeitimus (juos visus programos viršuje). Programoje daroma prielaida, kad el. Laiškai sukurta iš "Gmail" paskyros. Jei jis nėra registruojamas (net jei tai yra tik šiam projektui). Pakeiskite "į" kintamąjį į el. Pašto adresą, kuriame bus išsiųsti pranešimai. Pakeiskite "Gmail_user" į "Gmail" el. Laiško adresą ir, atitinkamai, slaptažodį kitoje eilutėje ("Gmail_Pass"). Taip pat galite pakeisti temą ir tekstinį pranešimą siųsti ("temą" ir "tekstą"). Turite įdiegti serijos prievadą, į kurį "Arduino" yra prijungtas prie serijos. Serijos. . Kuris kompiuterio prievadas yra prijungtas prie lentos, mes žiūrime į Arduino IDE apatiniame dešiniajame kampe.
Po šių pakeitimų paleiskite programą iš komandų eilutės / terminalo: "Python" judėjimas.py yra pasiruošęs! Kai PIR jutiklis sukelia pranešimą į nurodytą el. Laišką.
Ką dar galima padaryti naudojant PIR jutiklį
Dabar, gavęs el. Laišką, kad išsiųstų el. Laiškus su "Arduino", galite pradėti išplėsti projekto galimybes. Galite pridėti kitus jutiklius ir, pavyzdžiui, siųsti valandinius valandinius ataskaitų ataskaitas el. Paštu. Žinoma, PIR jutiklis yra naudojamas tiesiogiai su "Arduino" be prijungimo prie kompiuterio. Tokiu atveju, kai jutiklis yra įjungtas, galite įjungti įspėjamąjį pyptelėjimą, blykstę LED arba įtraukti apšvietimo patalpose (per aukštos įtampos relę).