- Reikalinga medžiaga
- Grandinės schema
- PIC mikrovaldiklis:
- Kodas ir paaiškinimas
- PIR jutiklio su PIC mikrovaldikliu darbas:
PIR (pasyvus infraraudonųjų spindulių) arba judesio jutiklis naudojamas judančio žmogaus kūno ar daiktų judesiui aptikti. Kai kas nors patenka į PIR jutiklio diapazoną, jo išvesties kaištis suteikia aukštą. Anksčiau mes sąsajome PIR su kitais mikrovaldikliais:
- „Arduino“ judesio detektorius naudojant PIR jutiklį
- IOT pagrįsta „Raspberry Pi“ namų apsaugos sistema su el. Pašto įspėjimu
- Automatinė laiptų šviesa su AVR mikrovaldikliu
Šiandien mes paprasčiausiai pereisime prie PIR sąsajos su PIC mikrovaldikliu PIC16F877A. Šioje grandinėje, jei kai kurie judantys objektai yra PIR jutiklio diapazone, garsinis signalas pradės pypsėti.
Reikalinga medžiaga
- „PicKit 3“
- PIR jutiklis.
- PIC16F877A IC
- 40 - kaiščių IC laikiklis
- Puiki lenta
- 20 MHz kristalinis OSC
- Moteriški ir vyriški „Bergstick“ kaiščiai
- 33pf kondensatorius - 2Nos, 100uf ir 10uf dangteliai.
- 680 omų, 10K ir 560ohm rezistorius
- Bet kokios spalvos šviesos diodas
- 1 litavimo rinkinys
- IC 7805
- 12 V adapteris
- Buzeris
- Jungiamieji laidai
- Bandomoji Lenta
PIR jutiklis:
PIR jutiklis yra nebrangus, mažos galios ir lengvai naudojamas judesio aptikimo „Sesnor“. PIR jutiklis priima tik infraraudonuosius spindulius, bet neskleidžia, todėl jis vadinamas pasyviuoju. PIR pajunta bet kokį šilumos pokytį, o jei yra pokyčių, tai suteikia AUKŠTĄ išvestyje. PIR jutiklis taip pat vadinamas piroelektriniu arba IR judesio jutikliu.
Kiekvienas objektas kaitindamas skleidžia tam tikrą kiekį infraraudonųjų spindulių, panašiai kaip žmogaus kūnas dėl kūno šilumos skleidžia IR. Infraraudonieji spinduliai, kuriuos sukuria kiekvienas objektas dėl oro ir daikto trinties. Pagrindinis PIR jutiklio komponentas yra piroelektrinis jutiklis. Kartu su tuo, BISS0001 ("Micro Power PIR judesio detektorius IC"), kai kurie rezistoriai, kondensatoriai ir kiti komponentai, naudojami PIR jutikliui kurti. BISS0001 IC ima iš jutiklio įvestį ir apdoroja, kad išvesties kaištis būtų atitinkamai aukštas arba žemas.
Sužinokite daugiau apie PIR jutiklį čia. Taip pat galite reguliuoti atstumo jautrumą ir laiko trukmę, kai išvesties kaištis bus didelis, kai bus aptiktas judesys. Šiuos du parametrus koreguoti turi dvi potenciometro rankenėles.
Grandinės schema
PIC mikrovaldiklis:
Norint užprogramuoti PIC mikrovaldiklį sąsajai su PIR, mums reikės IDE (Integrated Development Environment), kur vyksta programavimas. Sudarytojas, kur mūsų programa bus konvertuojami į MCU skaitoma forma, vadinama HEX failus. IPE (Integruota programavimo aplinka), kuris yra naudojamas dump mūsų hex failą į mūsų IPS MCUs.
IDE: MPLABX v.3.35
IPE: MPLAB IPE v3.35
Sudarytojas: XC8
„Microchip“ suteikė visas šias tris programines įrangą nemokamai. Juos galima atsisiųsti tiesiai iš jų oficialaus puslapio. Aš taip pat pateikiau nuorodą jūsų patogumui. Atsisiuntę įdiekite juos į savo kompiuterį. Jei turite kokių nors problemų, galite peržiūrėti pabaigoje pateiktą vaizdo įrašą.
Norėdami iškelti arba įkelti kodą į PIC, mums reikės PICkit 3. „ PICkit 3“ programuotojas / derintuvas yra paprastas, nebrangus grandinės derintuvas, kurį valdo kompiuteris, kuriame veikia MPLAB IDE (v8.20 ar naujesnė) programinė įranga. „Windows“ platforma. „ PICkit 3“ programuotojas / derintuvas yra neatskiriama kūrimo inžinieriaus įrankių rinkinio dalis. Be to, mums taip pat reikės kitos aparatūros, tokios kaip „Perf“ plokštė, litavimo stotis, PIC IC, kristalų osciliatoriai, kondensatoriai ir tt
Programuosime savo PIC16F877A naudodami ICSP parinktį, kuri yra mūsų MCU.
Norėdami įrašyti kodą, atlikite šiuos veiksmus:
- Paleiskite MPLAB IPE.
- Prijunkite vieną „PicKit 3“ galą prie savo kompiuterio, o kitą - prie „ICSP“ kontaktų ant geriausios lentos.
- Prisijunkite prie savo PIC įrenginio spustelėdami mygtuką prisijungti.
- Suraskite „Blink HEX“ failą ir spustelėkite „Program“.
Jei dar nesinaudojote „PIC“ mikrovaldikliu, pirmiausia perskaitykite toliau pateiktas mokymo programas, kad sužinotumėte, kaip naudoti ir programuoti PIC:
- Darbo su PIC mikrovaldikliu pradžia: PIC ir MPLABX įvadas
- Pirmosios programos rašymas naudojant PIC mikrovaldiklį ir konfigūracijos bitų nustatymas
- Šviesos diodas mirksi su PIC mikrovaldikliu
Kodas ir paaiškinimas
Pirma, mes turime nustatyti konfigūracijos bitus pic mikrovaldiklyje ir tada pradėti nuo negaliojančios pagrindinės funkcijos.
Žemiau esančiame kode „XC.h“ yra antraštės failas, kuriame yra visi draugiški smeigtukų ir periferinių įrenginių pavadinimai. Taip pat mes nustatėme kristalų osciliatoriaus dažnį, PIR ir „Buzzer“ kaiščių ryšį žemiau esančiame kode.
# įtraukti
Tuščiame main (), „ TRISB = 0X00“ naudojamas nurodant MCU, kad PORTB kaiščiai naudojami kaip OUTPUT, „TRISC = 0Xff“ naudojami nurodant MCU, kad PORTB kaiščiai naudojami kaip INPUT. Ir "PORTB = 0x00" yra naudojamas nurodyti MCU, kad visą RB3 Low produkcija.
TRISB = 0X00; TRISC = 0Xff; PORTB = 0X00; // Padaryti visą RB3 išvestį LOW
Pagal žemiau pateiktą kodą, kai tik „PIR get HIGH“, garsinis signalas gaus „HIGH“ arba kitaip jis liks išjungtas.
while (1) // Patekite į „Infinie While“ kilpą {if (PIR == 1) {Buzzer = 1; __delay_ms (1000); // Palaukite} dar {Buzzer = 0; }}}
Visas kodas su demonstraciniu vaizdo įrašu pateikiamas šio projekto pabaigoje.
PIR jutiklio su PIC mikrovaldikliu darbas:
Šiame projekte nėra sudėtingos aparatinės įrangos sąrankos, mes vėl naudojame tą pačią PIC mikrovaldiklio plokštę (kaip parodyta žemiau), kurią sukūrėme LED mirksi pamoka. Tiesiog prijunkite PIR jutiklio modulį su savo PIC mikrovaldiklio plokšte pagal prijungimo schemą. Baigę ryšius, tiesiog iškelkite kodą naudodami „PicKit 3“ programuotoją, kaip paaiškinta ankstesnėje mokymo programoje, ir mėgaukitės savo išvestimi.
Įkėlus programą, PIR jutiklis yra pasirengęs pateikti OUTPUT. Kai tik žmogus ar objektas, skleidžiantis IR, patenka į PIR diapazoną, kuris suteikia AUKŠTĄ išvestims. Remiantis ta išvestimi, signalizatorius veiks. Jei PIR išvestis yra didelė, garsinio signalo įvestis tampa didelė ir atvirkščiai.
Jutimo atstumą ir laiko atidėjimą galite valdyti dviem potenciometrais, pritvirtintais ant PIR modulio. Norėdami sužinoti daugiau apie PIR jutiklį, eikite į nuorodą.