PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Phasenverschiebung messen / Bauteilsuche



ThSteier
13.06.2006, 19:41
Hallo,

ich grübele immer noch über der Idee, die Phasenverschiebung eines (Ultraschall-) Signals an zwei voneinander abgesetzten Empfängern zur Winkelmessung und damit zur Positionsbestimmung zu nutzen.

Bei der Gelegenheit bin ich nun über eine Intersil-AppNote gestolpert, die eine einfache Möglichkeit darstellt, die Phasenverschiebung zwischen zwei Signalen zu messen: AN9637: Simple Phase Meter Operates to 10 MHz (http://www.intersil.com/data/an/an9637.pdf) (ok, die 10 MHz sind Overkill...)

Das Problem ist nur, daß ich bisher nirgends eine Bezugsquelle (oder Vergleichstypen) für die dort verwendeten Präzisions-OpAmps gefunden habe. Kann da eventuell jemand weiterhelfen bzw kennt jemand eine ähnliche Schaltung mit hierzulande auch für "Normalbastler" erhältlichen ICs? Nicht, daß es da schon weit einfachere Lösungen gibt und ich das Fahrrad nochmal neu erfinde...

Viele Grüße,
Thomas

Manf
13.06.2006, 20:30
Die dargestellte Schaltung AN9637 ist recht klassisch im Design mit Einzeltransistoren die den Phasenvergleich von Rechtecksignalen übernehmen.

Nach dem Formen von symmetrischen Rechtecksignalen wird mit den Flanken ein FF geschaltet das am Ausgang ein PWM Signal mit dem Phasenwert liefert.

Der Aufwand richtet sich etwas nach dem Amplitudenberich über den der Rechteck phasenrichtig geformt werden soll.
Ein sehr einfacher Aufbau zur Demonstration führt beispielsweise zu folgendem Ergebnis:
(Hierbei wurde die Signalverstärkung und Formung ohne OPVs durchgeführt.)

https://www.roboternetz.de/phpBB2/viewtopic.php?t=16515
Manfred

https://www.roboternetz.de/phpBB2/album_pic.php?pic_id=824

ThSteier
14.06.2006, 09:07
Hallo

und danke - jetzt hab ich's kapiert. Wie das bei Rechtecksignalen funktioniert, wußte ich, aber daß obige Schaltung im Prinzip nix anderes macht bzw das Signal erstmal in Rechteckschwingungen umsetzt und dann "konventionell" weiterverarbeitet, war mir nicht aufgefallen.

Also hilft mir die Schaltung auch nicht wirklich weiter. Ich hatte schon mit dem Gedanken gespielt, die Signale jeweils durch einen Trigger zu schicken und damit dann einen Timer (im AVR oder auch extern) zu steuern - das Problem ist nur, daß ich im Gegensatz zur "normalen" Echoauswertung ja nie weiß, welches Signal nun eher eintrifft und damit Referenzsignal ist. :(

Jetzt habe ich mir überlegt, daß man das theoretisch mit zwei externen INTs am AVR lösen könnte: je nachdem, an welchem Pin die Flanke zuerst wechselt, wird eine passende Interrupt-Routine ausgeführt. Das Problem sehe ich nur darin, daß ich praktisch innerhalb der Interrupt-Routine den jeweils anderen Interrupt konfigurieren muß, da ja (je nachdem, wo die Flanke eher kam) der gleiche INT als Start- und Stopbedingung genutzt werden kann und ich außerdem eine Richtungsinfo ableiten muß.
Wäre das umsetzbar, oder sind da Schwierigkeiten zu erwarten?

Viele Grüße,
Thomas

Manf
14.06.2006, 09:14
https://www.roboternetz.de/phpBB2/viewtopic.php?t=20665
Das haben wir doch hier auch gerade, wenn man die Phase von 0 bis 2Pi misst, dann hat man sie auch ohne Fallunterscheidung.
Manfred

ThSteier
14.06.2006, 09:31
Autsch, den zweiten Threat zum Thema habe ich nicht gesehen. Bin über den eMail-Link rein...

Ich schau dann auch mal mit drüben (https://www.roboternetz.de/phpBB2/viewtopic.php?t=20665) rein, mein ursprüngliches Anliegen hat sich ja mehr oder weniger erledigt.

Viele Grüße,
Thomas

Manf
14.06.2006, 09:43
Kein Problem der andere Thread ist jünger, ich wollte nur sagen dass es zwei gibt.
Manfred