-
-
Erfahrener Benutzer
Fleißiges Mitglied
Phasenverschiebung messen / Bauteilsuche
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 (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
-
Super-Moderator
Lebende Robotik Legende
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
Bild hier
-
Erfahrener Benutzer
Fleißiges Mitglied
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
-
Super-Moderator
Lebende Robotik Legende
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
-
Erfahrener Benutzer
Fleißiges Mitglied
Autsch, den zweiten Threat zum Thema habe ich nicht gesehen. Bin über den eMail-Link rein...
Ich schau dann auch mal mit drüben rein, mein ursprüngliches Anliegen hat sich ja mehr oder weniger erledigt.
Viele Grüße,
Thomas
-
Super-Moderator
Lebende Robotik Legende
Kein Problem der andere Thread ist jünger, ich wollte nur sagen dass es zwei gibt.
Manfred
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen