» tråder » tips »IR-sensor for Arduino og mer

IR-sensor for Arduino og ikke bare



Sensoren, foreslått av Instructables under kallenavnet AdnanA61, lar deg oppdage kortbølget infrarød stråling fra kilder som fjernkontroller, brann, glødelamper og solen. Den reagerer ikke på en annen form for infrarød stråling - langbølget, hvis kilder alle er gjenstander oppvarmet til vanlige temperaturer. hjemmelaget produkt produserer to typer signaler: analog og diskret, den andre av dem er dannet av en komparator, hvis terskel blir justerbar. Begge signalene kan brukes begge på Arduino, og til andre enheter med eller uten mikrokontroller. Følgende er et annet kortdesign, kretsen er ikke forskjellig:

IR-sensor for Arduino og ikke bare


Sensoren er laget på en av de to komparatorene til mikrokretsen LM393, den andre kan brukes til å løse et annet problem om ønskelig. Hvis du ikke bruker den, er det bedre å koble begge inngangene til en vanlig ledning, og la utgangen være uten tilkobling.



Opplegget er designet slik at det ikke er veldig praktisk å lese det. De tre punktene som er utpekt som A0 må være koblet sammen. To poeng utpekt som D0 - også. Så det blir klart hva som er koblet til og hvordan det fungerer. Ingen gåter. Hvis du monterer sensoren fra designeren, vil utspenningen av kammen på brettet som følger med i settet være som følger:



Selvfølgelig, på et provisorisk brett, trykt eller brødbrett, kan denne pinout være laget for å være praktisk for deg. Du kan kontrollere brettet i aksjon og justere komparatorens terskel umiddelbart etter montering, ganske enkelt ved å levere strøm, takket være lysdioden ombord. Den andre LED-en lyser kontinuerlig når strømmen er på. Deretter kan du koble sensoren til Arduino og teste den analoge utgangen med denne skissen:

// kopier denne koden i ideen til arduino fra denne linjen

// note: - denne koden er for analog verdi

int-sensor = A0; // initialisere den analoge pinnen

int summer = 3; // initialisere summer-pin

int-verdi;

ugyldig oppsett () {

Serial.begin (9600);

pinMode (sensor, INPUT); // måling av pinnemodustypen til pinnen som inngang eller utgang

pinMode (summer, OUTPUT);

}

void loop () {

verdi = analogRead (sensor); // lese valus fra sensoren

verdi = kart (verdi, 0,1023,0255); // kartlegging av verdien fra 0 til 1023 vekt / vekt 0 til 255

digitalWrite (summer, verdi); // slå av og på summeren med den tilordnede verdien

}


Og digitalt - med en annen skisse:

// kopier denne koden i ideen til arduino fra denne linjen

// note: - denne koden er for digital verdi

int sensor_digital = 2; // initialisere den digitale pinnen

int summer = 3;

int-verdi;

ugyldig oppsett () {

Serial.begin (9600);

pinMode (sensor_digital, INPUT);

pinMode (summer, OUTPUT);

}

void loop () {

verdi = digitalRead (sensor_digital); // lese den digitale datoen fra sensoren

digitalWrite (summer, verdi); // slå av og på summeren

}


Når alt fungerer, kan du skrive programmer som implementerer algoritmer med større kompleksitet. For eksempel for at en robot "redd" for å nærme seg en flamme eller en kraftig glødelampe for ikke å bli dårligere. Og han gjør den riktige tingen, siden det å skade sensortavla i sterk oppvarming i mindre enn 100 mm avstand kan skade det.

Passer for tema

Beslektede emner

Legg til en kommentar

    • smilersmilerxaxaokdontknowyahoonea
      sjefscratchlurejaja-jaaggressivhemmelighet
      beklagerdansedance2dance3benådninghjelpdrikkevarer
      stoppvennergodgoodgoodfløytebesvimelsetunge
      røykklappingCrayerklærehånligdon-t_mentionnedlasting
      heteirefullaugh1MDAmøtemoskingnegative
      not_ipopcornstraffeleseskremmeskremmersøk
      spydighetthank_youdetteto_clueumnikakuttenig
      dårligbeeeblack_eyeblum3rødmeskrytekjedsomhet
      sensurertpleasantrysecret2trueseieryusun_bespectacled
      ShokRespektlolPrevedvelkommenKrutoyya_za
      ya_dobryihelperne_huliganne_othodiFLUDforbudnær

Vi anbefaler deg å lese:

Gi den til smarttelefonen ...