et:software:homelab:library:module:sensor
This is an old revision of the document!
Table of Contents
Andurid
Seotud mooduliga: [HW] Andurite moodul
See teegi osa sisaldab Kodulabori andurite kasutamise funktsioone.
Andmetüübid
- ir_distance_sensor
Infrapuna-kaugusanduri kauguse arvutuse funktsiooni parameetrite struktuur. Kauguse arvutusvalem on a / (ADC + b) - k. Struktuuri liikmed:- a - jagatav.
- b - vabaliige.
- k - korrigeerimiskonstant.
Konstandid
- ir_distance_sensor GP2Y0A21YK - Sharp GP2Y0A21YK kaugusanduri parameetrite struktuuri objekt.
Funktsioonid
signed short thermistor_calculate_celsius(unsigned short adc_value)
Termistori temperatuuri arvutamine Celsiuse kraadides ADC muunduri väärtusest. Funktsioon põhineb teisendustabelil. Parameetrid: * //adc_value// - ADC teisenduse väärtus. * Tagastab temperatuuri Celsiuse kraadides -20 kuni 100 kraadi piires.
signed short ir_distance_calculate_cm(ir_distance_sensor sensor, unsigned short adc_value)
IR kaugusanduri väljundpinge ADC väärtuse sentimeetriteks ümberarvutamise funktsioon. Parameetrid: * //sensor// - Kaugusanduri parameetrite struktuuri objekt. * //adc_value// - 10-bitine +5 V võrdluspingega ADC väärtus. * Tagastab kauguse sentimeetrites või -1, kui seda ei saanud arvutada.
unsigned short ultrasonic_measure_srf04(pin trigger, pin echo)
Ultraheli-kaugusanduri mõõtmise teostamise funktsioon. Funktsioon tekitab SRF04 kaugusmõõdiku päästikuimpulsi ja mõõdab kajaimpulsi saabumise aega. Aja põhjal arvutatakse objekti kaugus. Mõõtmine võtab aega kuni 36 ms. Funktsioon eeldab 14.7456 MHz mikrokontrolleri taktsagedust. Parameetrid: * //trigger// - päästiku viigu muutuja. * //echo// - kaja viigu muutuja. * Tagastab kauguse sentimeetrites või 0, kui mõõtmine ebaõnnestus. * **//unsigned short ultrasonic_measure_srf05(pin trigger_echo)//** \\ Ultraheli-kaugusanduri mõõtmise teostamise funktsioon. Funktsioon tekitab kombineeritud signaali reziimis töötava SRF05 kaugusmõõdiku päästikuimpulsi ja mõõdab sama viigu pealt kajaimpulsi saabumise aega. Aja põhjal arvutatakse objekti kaugus. Mõõtmine võtab aega kuni 36 ms. Funktsioon eeldab 14.7456 MHz mikrokontrolleri taktsagedust. Parameetrid: * //trigger_echo// - päästiku/kaja viigu muutuja. * Tagastab kauguse sentimeetrites või 0, kui mõõtmine ebaõnnestus.
long map(long x, long in_min, long in_max, long out_min, long out_max)
Teisendab anduri väärtuse soovitud väärtuste vahemikuks. Võimaldab väärtusi ka inverteerida.
Näide
#include <homelab/module/sensors.h> // Ultraheli kaugusmõõdiku juhtviik pin pin_triggerecho = PIN(G, 0); int main(void) { unsigned short adc_value = 400; // näidisväärtus signed short distance; // IR kaugusanduri ADC väärtuse sentimeetriteks teisendamine distance = ir_distance_calculate_cm(GP2Y0A21YK, adc_value); // Ultraheli-kaugusanduriga mõõtmine distance = ultrasonic_measure_srf05(pin_triggerecho); }
et/software/homelab/library/module/sensor.1448370673.txt.gz · Last modified: (external edit)
