- Nepieciešams materiāls
- Ķēdes shēma
- PIC mikrokontrolleris:
- Kods un skaidrojums
- PIR sensora darbība ar PIC mikrokontrolleru:
PIR (pasīvais infrasarkanais) vai kustības sensors tiek izmantots, lai noteiktu kustīga cilvēka ķermeņa vai priekšmetu kustību. Ikreiz, kad kāds nonāk PIR sensora diapazonā, tas izejas tapā dod Augstu. Iepriekš mēs esam saskarējušies ar PIR ar citiem mikrokontrolleriem:
- Arduino kustību detektors, izmantojot PIR sensoru
- IOT bāzes Raspberry Pi mājas drošības sistēma ar e-pasta brīdinājumu
- Automātiska kāpņu gaisma ar AVR mikrokontrolleru
Šodien mēs vienkārši sazināmies ar PIR ar PIC mikrokontrolleru PIC16F877A. Šajā ķēdē, ja daži kustīgi objekti atrodas PIR sensora diapazonā, skaņas signāls sāks pīkstēt.
Nepieciešams materiāls
- PicKit 3
- PIR sensors.
- PIC16F877A IC
- 40 - pin IC turētājs
- Perfekts dēlis
- 20 MHz kristāla OSC
- Sieviešu un vīriešu Bergstick tapas
- 33pf kondensators - 2Nos, 100uf un 10uf vāciņš.
- 680 omi, 10K un 560ohm rezistors
- Jebkuras krāsas LED
- 1 lodēšanas komplekts
- IC 7805
- 12V adapteris
- Buzzer
- Savienojošie vadi
- Maizes dēlis
PIR sensors:
PIR sensors ir lēts, mazjaudīgs un viegli lietojams kustības detektors Sesnor. PIR sensors uztver tikai infrasarkanos starus, nevis izstaro, tāpēc to sauc par pasīvo. PIR uztver jebkuras siltuma izmaiņas, un, ja ir kādas izmaiņas, tas dod AUGSTU pie izejas. PIR sensors tiek saukts arī par piroelektrisko vai IR kustības sensoru.
Katrs objekts sildot izstaro zināmu daudzumu infrasarkano staru, līdzīgi kā cilvēka ķermenis izstaro infrasarkano staru ķermeņa siltuma dēļ. Infrasarkanais starojums, ko rada katrs objekts, pateicoties berzei starp gaisu un priekšmetu. PIR sensora galvenā sastāvdaļa ir piroelektriskais sensors. Kopā ar to BISS0001 ("Micro Power PIR kustību detektors IC"), daži rezistori, kondensatori un citi komponenti, ko izmanto PIR sensora izveidošanai. BISS0001 IC ņem ievadi no sensora un veic apstrādi, lai izejas tapa būtu attiecīgi HIGH vai LOW.
Uzziniet vairāk par PIR sensoru šeit. Varat arī pielāgot attāluma jutību un laika ilgumu, kurā izvades tapa būs augsta, kad tiks konstatēta kustība. Tam ir divas potenciometra pogas, lai pielāgotu šos divus parametrus.
Ķēdes shēma
PIC mikrokontrolleris:
Lai ieprogrammētu PIC mikrokontrolleru PIR saskarnei, mums būs nepieciešama IDE (Integrētā izstrādes vide), kur notiek programmēšana. Kompilators, kur mūsu programma tiek pārveidota par MCU lasāmā formā sauc heksadecimāliem failus. IPE (Integrētā programmēšanas vide), kas tiek izmantota, lai dump mūsu hex failu mūsu PIC MCUs.
IDE: MPLABX v3.35
IPE: MPLAB IPE v3.35
Sastādītājs: XC8
Mikroshēma ir devusi visu šo trīs programmatūru bez maksas. Tos var lejupielādēt tieši no viņu oficiālās lapas. Esmu norādījis arī saiti jūsu ērtībai. Pēc lejupielādes instalējiet tos savā datorā. Ja jums rodas kādas problēmas, varat apskatīt beigās sniegto videoklipu.
Dump vai augšupielādēt savu kodu PIC, mums būs nepieciešama PICkit 3. PICkit 3 programmētājs / atkļūdotājs ir vienkārša, zemas izmaksas, ķēdes atkļūdotājs, kas tiek kontrolēta ar datoru darbojas MPLAB IDE (v8.20 vai lielāks) programmatūru Windows platforma. PICkit 3 programmētājs / atkļūdotājs ir neatņemama daļa no attīstības inženiera rīku komplektu. Papildus tam mums būs nepieciešama arī cita aparatūra, piemēram, Perf plate, Lodēšanas stacija, PIC IC, Crystal oscilatori, kondensatori utt. Bet mēs tos pievienosim savam sarakstam, kad virzīsimies caur mūsu apmācībām.
Mēs ieprogrammēsim savu PIC16F877A, izmantojot ICSP opciju, kas ir pieejama mūsu MCU.
Lai ierakstītu kodu, rīkojieties šādi:
- Palaidiet MPLAB IPE.
- Savienojiet vienu sava PicKit 3 galu ar datoru un otru galu ar ICSP tapām uz pilnās tāfeles.
- Izveidojiet savienojumu ar PIC ierīci, noklikšķinot uz pogas Savienot.
- Pārlūkojiet Blink HEX failu un noklikšķiniet uz Program.
Ja PIC mikrokontrollerā esat jauns lietotājs, vispirms apmeklējiet tālāk norādītās apmācības, lai uzzinātu, kā izmantot un programmēt PIC:
- Darba sākšana ar PIC mikrokontrolleru: Ievads PIC un MPLABX
- Pirmās programmas rakstīšana ar PIC mikrokontrolleru un konfigurācijas bitu iestatīšana
- LED mirgo ar PIC mikrokontrolleru
Kods un skaidrojums
Pirmkārt, mums ir jāiestata konfigurācijas biti pic mikrokontrollerī un pēc tam jāsāk ar tukšu galveno funkciju.
Zemāk esošajā kodā “XC.h” ir galvenes fails, kas satur visus piespraudes un perifērijas ierīču draudzīgos nosaukumus. Arī mēs esam definējuši kristāla oscilatora frekvenci, PIR un Buzzer tapu savienojumu zemāk esošajā kodā.
# iekļaut
Tukšajā main (main) “ TRISB = 0X00” tiek izmantots, lai norādītu MCU, ka PORTB tapas tiek izmantotas kā OUTPUT, “TRISC = 0Xff” tiek izmantotas, lai norādītu MCU, ka PORTB tapas tiek izmantotas kā INPUT. Un “PORTB = 0X00” tiek izmantots, lai norādītu MCU padarīt visu RB3 Izejas līmeni zemu.
TRISB = 0X00; TRISC = 0Xff; PORTB = 0X00; // Padarīt visu RB3 izvadi LOW
Saskaņā ar zemāk redzamo kodu ikreiz, kad PIR get HIGH, skaņas signāls saņems HIGH vai arī tas paliek izslēgts.
while (1) // Ieejiet Infinie While cilnē {if (PIR == 1) {Buzzer = 1; __kavēšanās_ms (1000); // Pagaidiet} cits {Buzzer = 0; }}}
Pilnīgs kods ar demonstrācijas video ir norādīts šī projekta beigās.
PIR sensora darbība ar PIC mikrokontrolleru:
Šim projektam nav sarežģītas aparatūras iestatīšanas, mēs atkal izmantojam to pašu PIC mikrokontrolleru plāksni (kā parādīts zemāk), kuru esam izveidojuši LED mirgojošā apmācībā. Vienkārši savienojiet PIR sensora moduli ar savu PIC mikrokontrolleru plati saskaņā ar savienojuma shēmu. Kad esat pabeidzis savienojumus, vienkārši nometiet kodu, izmantojot savu PicKit 3 programmētāju, kā paskaidrots iepriekšējā apmācībā, un izbaudiet izvadi.
Pēc programmas augšupielādes PIR sensors ir gatavs dot OUTPUT. Ikreiz, kad cilvēks vai objekts, kas izstaro infrasarkano staru, atrodas PIR diapazonā, kas dod AUGSTU izejā. Un, pamatojoties uz šo izvadi, darbosies skaņas signāls. Ja PIR izeja ir augsta, skaņas signāla ievade kļūst augsta un otrādi.
Jūs varat kontrolēt uztveršanas attālumu un laika aizturi, izmantojot divus potenciometrus, kas fiksēti PIR modulī. Lai uzzinātu vairāk par PIR sensoru, sekojiet saitei.