This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
et:examples:sensor:ir_passive [2015/02/13 08:33] – rellermaa | 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: | ||
+ | * passiivne infrapunaandur (PIR) | ||
* optika infrapuna kiirguse koondamiseks andurile | * optika infrapuna kiirguse koondamiseks andurile | ||
- | * infrapunaandur | ||
* juhtelektroonika | * juhtelektroonika | ||
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 kasutamine kontrolleriga tähendab sisuliselt, et anduri lugemine ei erine palju tavalise lüliti lugemisest. Anduri lugemiseks tuleks andur ühendada mõne kontrolleri digitaalsisendiga. Anduri ühendamise puhul on oluline jälgida viikude paigutust. Need võivad anduritel erineda ja on oluline, et toide oleks anduril ikka toite viikudega ja signaal signaaliviikudega ühendatud. | + | |
- | Kodulabor III puluh tuleb andur ühendada Komboplaadi koodrisisendisse, kuna andur vajab töötamiseks 5V sisendpinget. Jälgi, et oleks ühendatud | + | Detektori kasutamine kontrolleriga tähendab sisuliselt, et anduri lugemine ei erine palju tavalise lüliti lugemisest. Detektori lugemiseks tuleks see ühendada mõne kontrolleri digitaal- või ka analoogsisendiga. Detektori ühendamise puhul on oluline jälgida viikude paigutust. Need võivad detektoritel erineda ja on oluline, et toide oleks detektoril ikka toite viikudega ja signaal signaaliviikudega |
+ | 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 | + | // Kodulabor II |
- | pin pir_pin = PIN(C, 4); // Kodulabor III kontrolleriga | + | //pin pir_pin = PIN(F, 0); |
+ | // Kodulabor | ||
+ | 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); | ||
+ | } | ||
+ | } | ||
} | } | ||
</ | </ |