This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
et:examples:sensor:ir_passive [2014/10/09 10:17] – raivo.sell | et:examples:sensor:ir_passive [2020/07/20 09:00] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ~~PB~~ | + | < |
====== Passiivne infrapunaandur ====== | ====== Passiivne infrapunaandur ====== | ||
- | //Vajalikud teadmised: [HW] [[et: | + | //Vajalikud teadmised: |
+ | [HW] [[et: | ||
+ | [AVR] [[et: | ||
+ | [LIB] [[et: | ||
===== Teooria ===== | ===== Teooria ===== | ||
- | [{{ : | ||
- | Passiivne infrapunaandur (inglise keeles //passive infrared sensor//, lühend PIR) mõõdab vaateväljas olevate objektidelt eralduvat infrapunakiirgust. Kõik kehad, mille temperatuur on kõrgem absoluutsest nullist eraldavad soojust, mis avaldub tavaliselt infrapunakirgusena. Infrapunakiirgust inimese silm küll ei näe, kuid selleks spetsiaalselt ehitatud anduritega on võimalik infrapunakiirgust mõõta. Anduri muudab passiivseks see, et andur ise ei eralda mõõtmiseks kiirgust vaid tegeleb ainult mõõtmisega. | ||
- | Enamlevinud kasutus on PIR anduri baasil töötavad liikumisandurid. | + | [{{ : |
+ | Passiivne infrapunaandur (inglise keeles //passive infrared sensor//, lühend PIR) mõõdab vaateväljas olevate objektidelt eralduvat infrapunakiirgust. Kõik kehad, mille temperatuur on kõrgem absoluutsest nullist eraldavad soojust, mis avaldub tavaliselt infrapunakiirgusena. Infrapunakiirgust inimese silm küll ei näe, kuid selleks spetsiaalselt ehitatud anduritega on võimalik infrapunakiirgust mõõta. Anduri muudab passiivseks see, et andur ise ei eralda mõõtmiseks kiirgust vaid tegeleb ainult mõõtmisega. | ||
- | PIR andur koosneb tavaliselt kolmest komponendist: | + | Enamlevinud kasutus on PIR anduri baasil töötavad elusolendi liikumise tuvastusandurid, |
- | | + | |
- | | + | PID koosneb tavaliselt kolmest komponendist: |
- | - juhtelektroonika | + | |
+ | * optika infrapuna kiirguse koondamiseks andurile | ||
+ | | ||
PIR andur on piisavalt tundlik, et tuvastada mitte ainult soojuskiirguse muutust vaid registreerib ka sellele, kui soojusallikas vaateväljas liigub. | PIR andur on piisavalt tundlik, et tuvastada mitte ainult soojuskiirguse muutust vaid registreerib ka sellele, kui soojusallikas vaateväljas liigub. | ||
+ | [{{ : | ||
===== Praktika ===== | ===== Praktika ===== | ||
- | PIR andurite väljundsignaal on üldjuhul lihtne digitaalsignaal, | + | PID andurite |
- | PIR anduri | + | Detektori |
+ | Kodulabor III puhul tuleb detektor ühendada Kombomooduli koodrite sisendisse, kuna detektor vajab töötamiseks 5 V sisendpinget. Detektori kasutamisel koodri sisendis tuleb jälgida, et oleks ühendatud ka Kodulabori väline toiteallikas. | ||
+ | < | ||
<code c> | <code c> | ||
- | // PIR anduri näidisprogramm | + | // Kodulabori PID anduri |
#include < | #include < | ||
- | //PIR anduri viigu defineerimine | + | // Detektori sisendviigu |
- | pin pir_pin = PIN(A, 1); | + | // Kodulabor II |
+ | //pin pir_pin = PIN(F, 0); | ||
+ | // Kodulabor III | ||
+ | pin pir_pin = PIN(C, 4); | ||
// Põhiprogramm | // Põhiprogramm | ||
int main(void) | int main(void) | ||
{ | { | ||
- | // LED-i viigud | + | |
- | pin_setup_output(led_green); | + | pin_setup_output(led_green); |
- | pin_setup_output(led_red); | + | pin_setup_output(led_red); |
- | // PIR anduri viik sisendiks seadmine | + | // Detektori signaaliviigu |
- | pin_setup_input(pir_pin); | + | pin_setup_input(pir_pin); |
- | // Lõputu tsükkel | + | |
- | while (true) | + | while (1) |
- | { | + | { |
- | // Kui PIR andur ei ole rakendunud põleb roheline LED | + | // Kui detektor |
- | // Kui andur rakendub süttib punane | + | // Kui detektor |
- | if(pin_get_value(pir_pin) == 0) | + | if(pin_get_value(pir_pin) == 0) |
- | { | + | { |
- | led_on(led_green); | + | led_on(led_green); |
- | led_off(led_red); | + | led_off(led_red); |
- | } | + | |
- | else | + | |
- | { | + | |
- | led_on(led_red); | + | |
- | led_off(led_green); | + | |
- | } | + | |
} | } | ||
+ | else | ||
+ | { | ||
+ | led_on(led_red); | ||
+ | led_off(led_green); | ||
+ | } | ||
+ | } | ||
} | } | ||
</ | </ |