Hallo, ich muss über DAC ein Signal ausgeben. 16 bit, 2Khz Updaterate. 2 Bilder sind eigefügt. So ähnlich geht es auch weiter. Signal 1 ist bei ADC 0V, Signal 2 bei ADC 1V, Signal 3 bei 2V und so bis 5V. Die Länge und Form der Signale sind unterschiedlich. Es gibt nicht wirklich einen (rechnerischen) Zusammenhang. Wie kann ich die Signale aneinander anpassen? Es soll ein fließender Übergang stattfinden. Wie die Signale dazwischen (bei 0,33V z.B.) aussehen ist nicht relevant. Was wäre der richtige Weg? Herzlichen Dank
Du willst also in Abhängigkeit eines gemessenen ADC-Wertes eine arbiträre Wellenform per DAC ausgeben? Dann musst du dir Punkte auf der auszugenden Wellenform suchen und diese in der richtigen Geschwindigkeit ausgeben. Wenn da kein rechnerischer Zusammenhang zwischen ADC und DAC zu finden ist, wüsste ich nicht, wie man es sonst machen sollte.
:
Bearbeitet durch User
>Du willst also in Abhängigkeit eines gemessenen ADC-Wertes eine >arbiträre Wellenform per DAC ausgeben? Korrekt. Es muss kein ADC Wert als Abhängigkeit sein. Zähler funktioniert auch. Ändert nichts an der Lösung der Aufgabe. Alle 10.000Punkte Zählerstand neues Signal. Dabei sind die Signale willkürlich. Das ist die Herausforderung. >Dann musst du dir Punkte auf der auszugenden Wellenform suchen und diese >in der richtigen Geschwindigkeit ausgeben. Bitte noch einen Satz zu dem Verfahren.
Nehme N Zähler. Wenn der Zähler >= Anzahl Samples des Signals ist, subtrahiere die Anzahl Samples vom Zähler. Zähle alle Zahler parallel, egal ob sie Teil des Mischsignals sind oder nicht. Jetzt zur Interpolation. Nimm deinen Wert. Runde ab. das, und das + 1 ist dein Signalindex. Hol dir das Sample das zum Zähler des jeweiligen Signals gehört, nennen wir die a und b. Jetzt definieren wir noch t=(wert mod 1). Damit kann man nun interpolieren. Linear interpolieren wäre: a*(1-t) + b*t. Und schon hast du dein interpoliertes Mischsignal! Ist aber nicht garantiert, dass das eindeutig ist. Aber davon wieder zum Anfangswert zu kommen, war ja keine Anforderung. (Der Grund für mehrere Zähler ist, dass sonst die Perioden anders sein können, und dann das kgv grösser als der Wertbereich des Zählers werden könnte, und man Probleme mit Overflows bekäme. Wobei, da gibt es einen netten Trick. Wenn man einen 64bit Zähler nimmt, und den immer nur um 1 erhöht, kann man ihn nicht so schnell erhöhen um jemals den Overflow zu sehen).
Robert schrieb: > Wie kann ich die Signale aneinander anpassen? > Es soll ein fließender Übergang stattfinden Kannst du das "fließend" mathematisch definieren? Soll das Signal dazwischen nur stetig sein oder soll auch ein bestimmter Übergang der spektralen Eigenschaften stattfinden?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.