Springen naar inhoud

Laserafstandsmeter


  • Log in om te kunnen reageren

#1

Mr.M

    Mr.M


  • 0 - 25 berichten
  • 10 berichten
  • Gebruiker

Geplaatst op 16 juni 2011 - 19:01

De komende 3 weken ga ik met wat vrienden bezig met een laserafstandsmeter.
We hebben de volgende manier bedacht om aan de hand van de laser de afstand te meten:
We pulseren de laser op een bepaalde frequentie. Deze frequentie gaan we razendsnel sweepen (frequentie verhogen). Als we het verschil in frequentie weten tussen het signaal wat we terug opvangen ( Het is de bedoeling dat laser en ontvanger in 1 apparaat zitten, je mikt met de laser op bijvoorbeeld een muur en de ontvanger vangt de laser weer op) en het signaal wat we op dat moment uitzenden, dan kunnen we de afstand uitrekenen, deze afstand kan namelijk als volgt berekend worden:

S= fverschil/frequentietoenameperseconde * c/2

Nu zitten we met een aantal ontwerpproblemen:
Stel dat we tot op 1 meter willen meten (en maximaal 50), en de meting mag maximaal een halve seconde duren. Dan moet dus de verschilfrequentie minimaal 2 Hz zijn (de microcontroller moet een hele periode voorbij zien komen van de verschilfrequentie). Dat zou betekenen dat we een frequentiesweep moeten maken van minstens 300 MHz per seconde en dat een halve seconde lang. Dit kun je bereiken door een voltage controlled oscillator te gebruiken. Echter, een voltage controlled oscillator is niet helemaal stabiel en heeft een fasestoring.1 Hz verschil meten is dus niet mogelijk.
Nu kunnen we de frequentie sneller sweepen zodat we een grotere verschilfrequentie krijgen, maar we hebben een microcontroller die werkt op 16Mhz, dus dan krijgen we het lastig om de afstanden nauwkeurig te meten. Ook de snelheid van de sweep zorgt ervoor dat de VCO al snel op zijn maximum frequentie zit.

Heeft iemand goede ideeŽn om te werken met lichtsnelheden?

Dit forum kan gratis blijven vanwege banners als deze. Door te registeren zal de onderstaande banner overigens verdwijnen.

#2

ZVdP

    ZVdP


  • >1k berichten
  • 2097 berichten
  • VIP

Geplaatst op 16 juni 2011 - 19:15

In plaats van met verschillende frequenties te werken, kan je het faseverschil tussen de uitgezonden en opgevangen golven meten. Daarbij moet je microcontroller enkel een DC-waarde uitmeten.
"Why must you speak when you have nothing to say?" -Hornblower
Conserve energy: Commute with a Hamiltonian

#3

Mr.M

    Mr.M


  • 0 - 25 berichten
  • 10 berichten
  • Gebruiker

Geplaatst op 16 juni 2011 - 21:01

Maar hoe zou je het faseverschil willen gaan meten dan? Signalen bij elkaar optellen? of gaan vermenigvuldigen? Wanneer krijg je dc?

#4

ZVdP

    ZVdP


  • >1k berichten
  • 2097 berichten
  • VIP

Geplaatst op 16 juni 2011 - 21:14

Er zijn een aantal mogelijkheden.
Dit is een eenvoudige uitvoering:
circuit
(voor de ingang moet je natuurlijk nog de dc component van het omgevingslicht wegwerken)

Vermenigvuldigen gaat ook. Dan krijg je sin(phi) en cos(phi).
"Why must you speak when you have nothing to say?" -Hornblower
Conserve energy: Commute with a Hamiltonian

#5

Mr.M

    Mr.M


  • 0 - 25 berichten
  • 10 berichten
  • Gebruiker

Geplaatst op 16 juni 2011 - 21:23

Maar is het probleem bij licht dan niet dat de verschuiving (in het tijddomein) zo klein is dat je die pulsjes nauwelijks kunt meten?

#6

ZVdP

    ZVdP


  • >1k berichten
  • 2097 berichten
  • VIP

Geplaatst op 16 juni 2011 - 21:26

Dat probleem heb je met alles, ook met je frequentieverschuiving.
De fase aanpak (hoewel niet met het circuit dat ik gegeven heb) wordt effectief gebruikt in commerciŽle camera's.
"Why must you speak when you have nothing to say?" -Hornblower
Conserve energy: Commute with a Hamiltonian

#7

Mr.M

    Mr.M


  • 0 - 25 berichten
  • 10 berichten
  • Gebruiker

Geplaatst op 16 juni 2011 - 21:32

als je het signaal dat je verstuurt begint met bijvoorbeeld een megahertz, en je sweept naar 2 megahertz. En je vermenigvuldigt het signaal dat je op het moment uitzendt met het signaal dat je op het moment binnenkrijgt. Dan krijg je een signaal met twee frequenties, de somfrequentie en de verschilfrequentie. De verschilfrequentie is iets redelijk meetbaars. Maar dan moet je wel heel snel kunnen sweepen.

#8

ZVdP

    ZVdP


  • >1k berichten
  • 2097 berichten
  • VIP

Geplaatst op 16 juni 2011 - 22:06

De faseshift valt echt wel goed mee hoor.

Als je bijvoorbeeld moduleert aan bv 500kHz, kom ik al aan 12į/m

Edit: nulletje vergeten in de berekening: moet 5MHz worden voor 12į/m
"Why must you speak when you have nothing to say?" -Hornblower
Conserve energy: Commute with a Hamiltonian

#9

Mr.M

    Mr.M


  • 0 - 25 berichten
  • 10 berichten
  • Gebruiker

Geplaatst op 17 juni 2011 - 07:49

Ja, maar dan zit ik er mee. Hoe meet je die faseverschuiving. Als je bij 5MHz duurt een periode 200 ns, als je een faseverschuiving hebt van 12 graden en je zou het signaal dat je verstuurt optellen bij het signaal dat je op dat moment binnen krijgt, dan zou je piekjes krijgen met een breedte van 6ns, terwijl je met onze microcontroller hoogstens piekjes kunnen meten van 62 ns. Verder is het een probleem dat het signaal dat je binnenkrijgt verandert in amplitude, omdat je het niet altijd evensterk weer terugkrijgt. Dus dan zou je iets moeten hebben dat een signaal altijd naar een signaal met dezelfde amplitude versterkt. Want als je het mij vraagt zouden de twee signalen dan ongeveer dezelfde amplitude moeten hebben.

#10

ZVdP

    ZVdP


  • >1k berichten
  • 2097 berichten
  • VIP

Geplaatst op 17 juni 2011 - 08:31

Wel, je hangt het circuit dat ik je eerder gegeven heb buiten je controller. En afhankelijk van de dc spanning aan de uitgang kan je het faseverschil afleiden. Ik vermoed dat je microcontroller toch een ADC heeft?

Wat het verschil in amplitude betreft, deze schakeling versterkt naar de voedingsspanning, onafhankelijk van de dc input:
circuit

Nu kan je best ook nog wel een filter rond de gekozen frequentie voor dit circuit hangen, om de ruis te verminderen.
"Why must you speak when you have nothing to say?" -Hornblower
Conserve energy: Commute with a Hamiltonian





0 gebruiker(s) lezen dit onderwerp

0 leden, 0 bezoekers, 0 anonieme gebruikers

Ook adverteren op onze website? Lees hier meer!

Gesponsorde vacatures

Vacatures