mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik Lock-In Verstärker oder Korrelation?


Autor: Drei Newton (3_newton)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

um ein stark abgeschwächtes optisches Signal zu messen, stellt sich für 
mich die Frage entweder die Korrelationsmethode zu verwenden, also das 
Signal, eine Null und eine Eins mit einem Code (pseudozufälliges 
Rauschen) zu versehen und das empfange Signal eben damit zu korrelieren, 
oder einen Lock-In Verstärker zu verwenden. Ich bin möglichst an der 
Amplitude des empfangenen Signals interessiert. Die Frage ist jetzt die 
Machbarkeit. Sicher geht beides. Einen einfachen selbstgelöteten Lock In 
oder lieber zwei Mikrocontroller mit Ram und AD/DA Wandlern...
Was dürfte einfacher zu realisieren sein, bzw. die besseren Ergebnisse 
bringen?

3N

Autor: GSP (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein Lock-in und Korrelation ist im Wesentlichen dasselbe. Es geht darum 
dem System einen Zustand aufzudruecken und den dann extrem schmalbandig 
zu detektieren. Um mal mit ein paar Vorurteilen abzufahren... So schnell 
loetet man einen Lock-in nicht zusammen. Die Hardware ist fast 
dieselebe, der Unterschied ist die Anregung. Einmal einen Sinus, das 
andere Mal eine Pseudorandomfolge. Fang mal mit der analogen Version an.

Autor: Drei Newton (3_newton)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lock in ist durchaus machbar, nur keine Ahnung wie gut. Es gab da im 
Journal of Physics einige Artikel mit Schaltplänen, so im 
Eurokartenformat.
Angenommen man müsste einen 2000 Byte langen Code 20 mal pro Sekunde 
senden, dann wird es knapp für einen AVR das aus dem Speicher zu holen, 
in den Speicher zu packen und zu rechnen, oder? Selbst wenn man zwei 
nimmt? Ob sich woas vielleicht diskret besser aufbauen lässt?
3N

Autor: Christoph Kessler (db1uq) (christoph_kessler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mich wundert immer noch, dass man mit einem AD-Wandler begrenzter 
Bitbreite noch Signale weit unter der Amplitudenschrittweite 
nachzuweisen kann, aber anscheinend geht das bei der Pseudozufallsfolge.
Ist das Ergebnis der Korrelation linear mit der Amplitude verknüpft?
Bei GPS klappts ja auch, innerhalb einer 1MHz Hochfrequenz-Bandbreite 
noch pseudozufällige Signale von ein paar Hz Bandbreite zu decodieren.

Autor: Hagen Re (hagen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Lock-In als Hardware kann zeitsynchron arbeiten weil du ja 
Lichtsignale benutzt. Das ist dann für den AVR die geringste Belastung. 
Der Lock-In-Amplifier ist dann im Grunde nicht anders als ein mit 
Rechteck getakteter synchroner Gleichrichter mit nachfolgendem 
Integrator.

Möchstes du eine Korrelation per Software machen dann ist das Speicher 
und Rechenintensiv. Je nach gesendetem Signal bieten sich verschiedene 
Verfahren an. Entweder die Keule FFT oder auch die FHT -> Fast Hadamard 
Transformation. Dazu musst du aber als Code für deine Signal spezielle 
Codes benutzen, orthognale Codes. Am einfachsten sind MLS -> Maximum 
Length Sequencies -> Pseudo Zufalls Funktionen per Shiftregister die 
eine maximale Länge besitzen. Dann kannst du für die FHT zwei 
Permutationsmatrizen berechnen und das empfangene Signal mit der FHT 
korrelieren. Diese Korrelation benötigt dann nur Additionen und 
Subtraktionen.

Da du aber das Signal selber aussendest und auch empfängst bietet sich 
der Lock-In-Amplifier geradezu an. Schau mal hier

http://cappels.org/dproj/dlmom/dlmom.html
http://www.cappels.org/dproj/selflocksyncdet/Synch...

Gruß Hagen

Autor: Hagen Re (hagen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>> Mich wundert immer noch, dass man mit einem AD-Wandler begrenzter

Ja, man spreizt über diese Pseudozufallssequenzen die orthogonal sind 
die Information im Spektrum und erhöht damit den SNR. Je länger diese 
Sequenz desto höher der SNR, man kommt damit unter die Rauschgrenze des 
Übertragungskanales. Wichtig ist das die Autokorrelation des Signales 
einen Dirac Implus gibt, im idealfalle. Und das die Kreuzkorrelation der 
verschiednenen Codes untereinander sehr flach ist. Leider gibt es nicht 
sehr viele dieser Codes mit idealen Eigenschaften. Siehe Barker Codes, 
MLS, Gold Codes, Komplementäre Sequenzen usw.

Gruß Hagen

Autor: Christoph Kessler (db1uq) (christoph_kessler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit der Forumssuche werden mehrere Threads zu lock-in gefunden, da wird 
mehrfach der AD630 empfohlen, ein Synchrondemodulator.
Im Datenblatt auf Seite 10 ist eine Applikation unter der Überschrift 
LOCK-IN AMPLIFIER APPLICATIONS:
http://www.analog.com/UploadedFiles/Data_Sheets/AD630.pdf

Autor: Drei Newton (3_newton)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wooha! Das Datenblatt und die Links sehen ja super aus. Das ist auf 
jeden Fall einfacher als mit nem AVR groß rumzurechnen. Danke Leute!

Autor: GPS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Pseudezufallssequenzen macht man sinvollerweise mit einem CPLD. Dort 
benotigt man fuer jedes bit des rueckgekoppelten Schieberegisters ein 
Flipflop. Mit 20bit ist man schon bei einer Sequenzlaenge von 1 million. 
Allerdings bringt das nur was wenn man mehrere Kanaele verwendet, die 
einander nicht sehen sollen. Nein ?
Der AD630 ist gut und geeignet. Man muss sich aber etwas Muehe geben.

Autor: Drei Newton (3_newton)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast Du einen Link wie das mit einem CPLD geht? Ich kann dazu irgendwie 
nicht viel finden. Muss wohl nach den falschen Stichworten suchen...

Autor: GPS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, das waere dann eine Xilinx App note : 210, 211, 217 & 220 ( 
XApp210.pdf, XApp211.pdf,XApp217.pdf, XApp220.pdf )

Autor: GPS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der korrekte Suchbegriff : linear feedback shift registers

Autor: Hagen Re (hagen)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
also falls es nicht gerade 100MSPS an Pseudozufallsequenzen sein soll 
dann ist ein CPLD/FPGA überdimensioniert. Sendest du deine Codes mit 
50-100KHz raus dann reicht ein AVR vollauf.

Sinnvoll ist also relativ und in den wenigsten Fällen ist ein CPLD/FPGA 
wirklich sinnvoll für einen Bastler. Auch wenn ein LFSR nicht wirklich 
schwierig ist in einen CPLD zu pressen. Das gilt aber auch für einen 
AVR.

Anbei mal eine Impementierung eines SR-LFSRs als Vergleich. Das ist ein 
Self-Shrinking-Linear-Feadback-Shift-Register, also quasi 2 LFSRs in 
einem mit einer Periode von 2^63-1. Man sieht im ASM Source das dies nur 
wenige Befehle sind.

Davon abgesehen schätze ich mal das du nicht sofort mit 20 Bit LFSR's 
also mit 2^20-1 langen Sequenzen anfangen möchtest. Sequenzen mit 
127,255 oder 511 Bits reichen für den Anfang erstmal aus. Man muß auch 
bedenken das je länger diese Sequenzen sind zwar der SNR weiter zunimmt 
aber auch die notwenige Bandbreite und damit Verarbeitungseschwindigkeit 
immer stärker anwächst, oder eben die effektive Datenübertragungsrate 
immer geringer wird. Bei einem 20 Bit LFSR sind das 2^20-1 Chips. 
Wolltest du 1 Baud Datenrate damit ereichen müssen deine Chips mit 
1048575 also rund 1Mhz rausgesendet werden. Also 1Mhz Baseband um 1 Bit 
pro Sekunde zu übertragen. Ein 20 Bit LFSR als MLS ist also schon sehr 
anspruchsvoll.

Bei meinen Experimenten mit MLS und der FHT benutze ich Sequenzlängen 
von 63 bis 2047 Bits. Sequenzen mit zb. 16-32Kbits sind schon 
zeitaufwendiger selbst für einen PC der eine Soundkarten Input als 
Stereosignal per FHT auswertete (48Khz Samplingfrequenz und 12Khz BPSK 
kodierte MLS Sequenz).

Gruß Hagen

Autor: GPS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hagen,
das ist interessant. Weshalb kriegt man nur ein Bit pro LFSR Periode 
durch ? Das ist doch frei waehlbar. Der Gewinn an SNR ist natuerlich das 
Verhaeltnis der Bandbreiten. Der Nachteil der kurzen LFSR ist der 
zunehmende DC Anteil. Die Periode hat ja immer eine Null mehr als 
Einsen.

Autor: Fritz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

ich würde das nach Möglichkeit das alles im AVR machen. Einen Timer - 
Interrupt setzten (z.B. von 1 ms) und darin messen und danach den 
Sinalpin toggeln. Die Werte in einem Ring speichern und die Summe 
bilden.
z.B. so ähnlich, je nach Compiler:

static int feld[100], i, z;
static long summe;

Timer_interrupt()
{
  feld[z] = read_adc(0);
  PORTC.0 = z % 2; // PORT toggeln
  z++;
  z%100;
  for(i = summe = 0; i<100; i++)
      if ( i%2 == 0)
          summe = summe + feld[i] ;
      else
          summe = summe - feld [i] ;
  // Die Summenbildung koennte man noch vereinfachen (falls 
erforderlich).
 }


// Achtung : Das Programm ist nicht getestet !

Die Auswertung enthält Werte der letzten 100ms. Das Programm läuft im 
Hintergrund und der AVR kann für andere Zwecke genutzt werden.
Für eine Lichtschranke sollte das genügen.

Gruß
Fritz

Autor: Fritz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ergänzung:


statt

z%100;

ist

z %= 100;


zu schreiben, da das ja gespeichert werden muss.
Fritz

Autor: GPS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit einer analogen Loesung bekommt man einiges mehr an Signal to Noise 
als wenn man mit einem AVR mit 1ms choppert. Mit einem AD630 kann man 
das Signal aus 100dB noise noch rausziehen, gemaess Appnote. Ich hab 
meine Muehe damit, dass das mit einem AVR noch moeglich sein soll. Zumal 
der dynamische Bereich des ADC gerade mal 60dB ist.

Autor: Fritz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo GPS,

das mit der besseren Lösung mit dem AD630 ist unbestritten. Aber die AVR 
Lösung ist um Größenornungen einfacher. Falls jemand eine Platine hat 
und mit dem Compiler umgehen kann, ist das in 2 Stunden erledigt.

Die schwächere Leisung beim AVR kommt von der Speichetiefe. Falls aber 
diese Leistung (aber trotzdem eine beachtliche Steigerung gegenüber 
einer einfachen Messung) ausreichend ist, sollte man eine uC Lösung ins 
Auge fassen. Ein Print mit 100 dB Störabstand ist auch nicht so leicht 
gemacht.

Gruß
Fritz

Autor: Hagen Re (hagen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Hagen,
>das ist interessant. Weshalb kriegt man nur ein Bit pro LFSR Periode
>durch ? Das ist doch frei waehlbar. Der Gewinn an SNR ist natuerlich das
>Verhaeltnis der Bandbreiten. Der Nachteil der kurzen LFSR ist der
>zunehmende DC Anteil. Die Periode hat ja immer eine Null mehr als
>Einsen.

Die Autokorrelations- und Kreuzkorrelations- Eigenschaften einer MLS 
beziehen sich immer auf die komplette Sequnez in kompletter Länge. Ein 8 
Bit LFSR mit nicht reduzierbarem Polynom erzeugt eine Sequenz von 2^8 -1 
Bits = 255 Nutzbits. Nur die komplette Sequenz besitzt die orthogonalen 
Eingenschaften die dann in der Autokorrelation einee Dirac-artigen 
Impulsantwort liefert. Verkürzt man das so vernichtet man quasi die 
Eigenschaften die man sucht.

Aber das bezieht sicht jetzt auf die Korrelation wenn man per Software 
zb. mit der FHT korrelieren möchte. Bei einem Lock-in Amplifier, 
getaktetem synchronen Gleichrichter, ist das weniger relevant sollte 
aber berücksichtig werden wenn man das bestmögliche rausholen möchte. 
DIe Mathematik dahinter bleibt nämlich die Gleiche.

Der DC Anteil kann vernachlässigt werden. In beiden Fälle akkumuliert 
man meisten nicht den DC Anteil im Integrator. Meistens nimmt man auch 
einen getakteten Integrator der nach einer Meßperiode zurückgesetzt 
wird. Also keinen kontinuierlichen Integrator. Eine MLS Sequenz 
beschreibt ja exakt 1 Datenbit, also warum sollte man im Integrator über 
diese Datenbit-Grenzen = MLS Länge hinweg weiter integrieren wollen ?

Möchte man bei eienr Lichtschranke nur die Störunanfälligkeit mit dieser 
Methode erhöhen dann braucht man nicht die math. Eigenschaften der 
Korrelation, eine x-beliebige Zufallsfolge synchron ausgesendet und 
gleichzeitig synchron auf Empfängerseite gleichgerichtet, reicht dann 
aus.

Problematisch wird es erst dann wenn im gleichen Medium mehrere dieser 
Lichtschranken sich beeinflussen könnten. Dann muss man wirklich MLS 
Sequenzen benutzen und für jede Lichtschranke eine andere. So wird dann 
math. korrekt sichergestellt das die gegenseitige Beeinflussung der 
Lichschranbken untereinander auf eine Minimu reduziert wird.

In diesem Falle würde ich aber keine MLS benutzen sondern Gold- oder 
Kasami Codes. Das sind quasi 2 MLS verknüpft. Verknüpft man als Goldcode 
8 Bit MLS dann hat man 256+1 verschiedene wählbares Codes mit 2x 8 Bit 
LFSRs. Deren Auto-/Kreuzkorrelation ist zwar leicht schlechter als bei 
puren MLS dafür aber hat man viel mehr verschiedene mögliche Codes. Es 
gibt zb. nur 16 Polynome, also nur 16 verschiedene nutzbare MLS mit 
Länge 255. Bei 6 Bit MLS, 63 Bit Länge, nur noch 6 verschiedene nutzbare 
Polynome. Dabei muß man aber berücksichtigen das davon die Hälfte der 
Polynome nur das Inverse Polynom der anderen Hälfte sind, quasi die MLS 
rückwärts betrachtet.
Bei 12 Bit LFSRs gibt es gerademal 144 nutzbare Polynome, also 72 
vorwärts und 72 rückwärts betrachtet, quasi inverse Polynome.

Gruß Hagen

Autor: Hagen Re (hagen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man könnte zwar mehrere Bits nun mit verschiedenen Sequenzen kodieren, 
aber das wäre bei so wenig nutzbaren Sequenzen Verschwendung. Im 
Allgmeinen kodiert man mit einer MLS ein Bit. +1 wird mit der normalen 
MLS kodiert und -1 mit der invertierten MLS. Im DC-Integrator entsteht 
so eine Spannung die abweichend vom virtuellen 0-Punkt, zb. 2.5Volt nach 
+5V oder 0V ausschlägt. Je größere diese Abweichung desto sicherer hat 
man den Kode erkannt, bzw. desto suaberer und Störungsfrei wurde der 
Kode übertragen.

Gruß Hagen

Autor: Hagen Re (hagen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Sendediode würde ich per BPSK koderter MLS ansteuern. Das ist das 
einfachste. BPSK ist dann nichts anderes als Manchaster Kodierung aber 
eben mit dem Unterschied das sich die Effektivfrequenz des Signales 
halbiert. Erhöht man den Takt um's 2 fache so hat man BPSK aus 
Manchaster.

Exakt so habe ich meine Experimente mit der Soundkarte gemacht. Stereo, 
Linker und Rechter Kanal mit 2 unterschiedlichen MLS in BPSK kodiert 
gefüttert. Beie Lautsprecher im Abstand von 30 cm zueinander 
ausgerichtet und mit dem Monomikrofon sofort wieder aufgenommen. Über 
die Laufzeitunterschiede nach der Dekodierung per FHT wurde dann die 
Position des Mikros trianguliert.

Gruß Hagen

Autor: Hagen Re (hagen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach übrigens, wegen dem DC-Offset. Der wird durch die FHT selber 
eliminiert. Eine FHT kann nur mit Matrizen effizient arbeiten die eine 
Potenz von 2 sind. Für eine 8 Bit = 255 Chip lange MLS muß man also eine 
FHT mit 256 Elementen durchführen. Man expandiert nun einfach die 255 
Chip MLS um eine führende 0. Am anderen Ende der FHT nimmt man diesen 
0-Index und hat den DC-Anteil = DC-Offset ermittelt. In den restlichen 
255 Ausgängen findet man den Slot der den größten Ausschlag besitzt, das 
ist quasi der zeitliche Offset an dem die höchste Übereinstimung mit der 
gesuchten MLS im empfangen Signal gemessen wurde.

Möchte man beim Lock-In-Amplifier noch ein Quentchen mehr rausholen so 
baut man 2 Lockin-Amplifier auf. Also I/Q Kanäle und am Ende wird mit R 
= Sqrt(I^2 + Q^2) das Effektivsignal berechnet. So werden 
Phasenunterschiede eliminiert und der SNR nochmals erhöht.

Gruß Hagen

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hagen Re wrote:
> Nur die komplette Sequenz besitzt die orthogonalen
> Eingenschaften die dann in der Autokorrelation einee Dirac-artigen
> Impulsantwort liefert. Verkürzt man das so vernichtet man quasi die
> Eigenschaften die man sucht.

So drastisch würde ich das nicht ausdrücken. Auch wenn man die Folge 
abschneidet bleiben die AK-Eigenschaften noch "relativ" gut.

> In diesem Falle würde ich aber keine MLS benutzen sondern Gold- oder
> Kasami Codes. Das sind quasi 2 MLS verknüpft. Verknüpft man als Goldcode
> 8 Bit MLS dann hat man 256+1 verschiedene wählbares Codes mit 2x 8 Bit
> LFSRs. Deren Auto-/Kreuzkorrelation ist zwar leicht schlechter als bei
> puren MLS dafür aber hat man viel mehr verschiedene mögliche Codes.

Die Autokorrelation ist schlechter, die Kreuzkorrelation ist dafür 
besser.

Autor: Hagen Re (hagen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>So drastisch würde ich das nicht ausdrücken. Auch wenn man die Folge
>abschneidet bleiben die AK-Eigenschaften noch "relativ" gut.

Schon richtig, deshalb gibts ja in der Praxis auch solche Verfahren. 
Mathematisch betrachtet ist es aber wirklich so das man nur so das beste 
machbare und vorausberechenbare SNR erhält.

>Die Autokorrelation ist schlechter, die Kreuzkorrelation ist dafür
>besser.

Auch dem kann ich zustimmen. Allerdings gilt das dann nur für speziell 
seektierte Goldcodes. Also nicht alle der math. machbaren Goldcodes 
innerhalb dieser Sequenzen sind gleich gut. Selektiert man nach bester 
Qualität so reduziert sich drastisch die Anzahl der gute Goldcodes. Das 
hat dann zur Folge das der Vorteil der größeren Anzahl an machbaren 
Goldcodes wieder sich soweit reduziert das sie mit MLS vergleichbar 
wären. Da man dies nicht möchte, man also die Vielzahl an Goldcodes 
benötigt, reduziert sich eben die Auto- und Kreuzkorrelation in deren 
Qualität wieder, eben betrachtet auf den Durchschnitt aller Goldcodes 
einer Sequenz.

Das habe ich übrigens experminetell nachvollziehen können, ich habe ein 
PC Program geschrieben um  MLS/GoldCodes und die nötigen 
Permutationsmatrizen für die FHT zur berechnen, also die irreducibel 
Polynome, und innerhalb einer Gruppe die Autokorrelationen und 
Kreuzkorrelationen berechnet und dann daraus die besten Codes 
ausgewählt. Schraubt man die Qualitätsvorgaben so hoch wie bei MLS um 
Goldcodes zu bewerten dann ist es tatsächlich so das deren Anzahl 
drastisch sinkt. Dazu gibt es im WEB aber auch Seite die das 
mathematisch erklären. Nicht aus jeder Kombination zweier MLS entstehen 
gute Goldcodes.

Kasami Codes empfand ich als generell schlechter und auch aufwendiger zu 
programmieren. Mit Goldcodes bin ich bei Kodierungen von Daten noch am 
besten gefahren. Für zb. Tiangulierungsprobleme, Schall/Ultraschall mit 
MLS. Wobei aus dem Ultraschallprojekt eine Leiche geworden ist, wie so 
oft ;)

Gruß Hagen

Autor: Hagen Re (hagen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nochmal genau, meine Software erzeugte alle MLS und Goldcodes mit zb. 
127 Bit Länge und verglich alle möglichen Codes mit sich selber und auch 
untereinander per Auto-/Kreuzkorrelation um die besten Codes zu finden. 
Das Resultat als durchschnittliche Summe zeigte das MLS eine bessere 
Auto- und Kreuzkorrelation als die Goldcodes haben. Nur wenn man eine 
selektierte Auswahl an Goldcodes im Vergleich zum Durchschhnitt aller 
MLS betrachtete stimmte deine Aussage ! Deswegen gilt eben auch das 
nicht jede Kombination zweier MLS eine guten Goldcode ergibt.

Gruß Hagen

Autor: GPS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hagen,
Danke fuer die ausfuehrlichen Erklaerungen zu den MLS und deren 
Anwendungen im Detail. Das sollte man in ein Tutorial rausziehen.

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Nicht aus jeder Kombination zweier MLS entstehen gute Goldcodes.

Nicht aus jeder Kombination zweier MLS entstehen Gold-Codes. Gold-Codes 
haben alle die selben AK- und KK-Eigenschaften. Siehe z.B. 
http://books.google.com/books?id=hQ6bl3RG04sC&pg=P....

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab mal einen Wiki-Artikel angefangen: Codierte Übertragung

Autor: Hagen Re (hagen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Andreas, hast Recht ich habe nochmal in meinen PDFs nachgeschaut. Nur 
frage ich mich jetzt warum ich den Aufwand in meiner Software überhaupt 
betrieben habe um "prefered Pairs" zu finden.

Goldcodes haben noch einen anderen Nachteil. Ich habe keine Methode 
gefunden sie per FHT korrelieren zu können. Das Einzigste was ich als 
machbar umgesetzt habe ist bei einem synchronisiertem Signal das 
empfangene Signal mit einer der beiden MLS aus dem Goldcode zu XOR'en 
und dieses Resulat dann per FHT für die zweite benutze MLS im Goldcode 
zu korrelieren. Leider kann man das nicht effizient bei nicht 
synchonisierten Signalen benutzen. Also zur Synchronisation benutzen.

Gruß Hagen

Autor: Fritz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

das mit den MLS Codes ist doch etwas übertrieben. Es geht ja nur um 
einen Sensor ("um ein stark abgeschwächtes optisches Signal zu messen") 
und nicht um mehrere Signale gleichzeitig. Aus desem Grund ist ein Chirp 
viel
günstiger. Die Pseudozufallsgeneratoren haben leider "Nebenmaxima" bei 
der Korrelation. Der Chirp hat eine sehr scharfe Korrelationsspitze.
(Sehr interessant ist auch ein Chirp, der tatsächlich von einer 
Fledermaus abgegeben wird. Steigt logarithmisch und hat mehrere 
Frequnzen gleichzeitig.)


Also einfach einen linearen Chirp nehmen.
Von den Fledermäusen lernen!

Gruß
Fritz

Autor: Drei Newton (3_newton)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Meinst Du mit Chirp einen Sweep?

Autor: SQX (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein Chirp is ein Sweep, ja.

Autor: Fritz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich weiß jetzt mit "Sweep" nichts anzufangen. Aber eine Folge von z.B.

1011001110001111000011111100000

oder jede Frequenz ca gleich lang z.B.

101010101010110011001100111000111000

führt zu eine scharfen Autokorrelierten.


Gruß Fritz

Autor: SQX (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein Chirp ist ein endlicher Pulszug, der ueblicherweise einen steigenden 
Sweep enthaelt. Dh zuerst kommen die tiefen Frequenzen, dann die hohen. 
Vom Ursprung des Begriffes, ein Vogel ruft so, ist das Wort ein 
amerikanisches Wort, das die Bedeuting im Klang selbst enthaelt. Zuerst 
kommen die tiefen Frequenzen, dann die hohen. Also :
00000111110000111100011100110100000
vereinfacht.

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein binärer Chirp hat auf keinen Fall bessere AK-Eigenschaften als eine 
MLS. Wenn ich mich richtig erinnere ist die MLS sogar optimal.

Autor: Sami Xxx (mirness)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hat es jemand von Euch geschafft, den Lock-In Verstärker mit dem AD630 
zu realisieren?

Ich muss das Gleiche ls Praxisprojekt machen und komme ohne Hilfe nicht 
weiter :-(


Grüße

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.