Hallo Leute! Ich baue mit einem µC (ARM) einen Sägezahn selbst. Die Ausgangsspannung beträgt +-1,2V. Die Frequenz des Sägezahnes ist verstellbar von 0,1HZ - 100HZ. Dieser ARM besitzt einen DA-Wandler, der von 0V - 3,3V eine Spannung ausgeben kann (10-Bit). Diese analoge Ausgangsspannung geht über einen invertierenden Verstärker, der die angegebene Ausgangsspannung produziert (+-1,2V). Das Problem ist jetzt, dass die Ausgangsspannung auch verstellbar sein soll. Bis jetzt habe ich es so geplant, dass der Sägezahn im Prozessor als Zahlenwert gestaucht wird, je nach Einstellung des Benutzers kann die Maximalspannung am LCD-Display abgelesen werden. 1. Wenn der Benutzer die Spannung jetzt auf +-0,12V zurückschraubt, dann zählt der Prozessor nur bis maximal 102,3 -> 102, damit beim Analog-Out +-0,12V herauskommen. Dies bedeutet, dass eine gestauchte Kurve nicht mit der vollen Auflösung ausgegeben werden kann. 2. Eine Idee war z.B. ein Poti beim invertierenden Verstärker einzubauen, welches nach außen geführt wird und welches der Benutzer verstellen kann. Je nach Potistellung verändert sich dann die Verstärkung. Dann weiß ich aber allerdings nicht, wie ich die Einstellung des Verstärkungswiderstandes als Zahlenwert wieder in den Prozessor bekommen soll, damit dieser, dann die Maximalspannung am Display anzeigt. 3. Eine weitere Idee ist ein digigal verstellbarer Widerstand, der vom Prozessor angesteuert wird. Dieser Widerstand würde ebenfalls als Referenzwiderstand beim invertierenden Verstärker eingebaut. Der Maximalwert des Widerstandes sollte 10K betragen und 256 Stufen würden reichen. Ich weiß jedoch nicht, wie viele Stufen so ein Widerstand tatsächlich hat. Es würden auch 10 Stufen reichen. Diesen Widerstand sollte man über SPI oder I2C ansteuern können. Ich kenne jedoch keinen Typen. Kann mir jemand einen solchen Baustein nennen? Ja Leute! Ich habe auch nun drei mögliche Lösungen gesagt. Ich weiß nicht welche die Beste ist, oder wie man es z.B. heutzutage bei einem Frequenzgenerator macht. Wie löst man das bei einem digitalen Frequenzgenerator? Welche von den drei Möglichkeiten kommt für euch in Frage? Oder ist Nummer 1 die Beste? Wenn man sich z.B für Nummer 3 entscheiden würde und man mittels des digital verstellbaren Widerstandes die Verstärkung so reduzieren würde, dass man ebenfalls auf +-0,12V angelangt ist, wäre die Auflösung wirklich besser oder wären die Störungen schon so übermächtig, dass man daraus keinen Vorteil ziehen würde und wiederum Lösung 1 die bessere wäre, da sie am einfachsten ist? Danke für eure Antworten. Tschüss Martin PS: AVR, 8051, MSP sind auch ganz interesant.
Hi, Also deine 2. Idee finde ich ganz gut und das Problem, die Maximal-Spannung anzuzeigen könntest du doch "ganz einfach" so lösen, dass du die letztendliche Ausgangsspannung wieder über einen A/D-Wandler vom µC ausließt, dann hast du sogar die tatsächliche Spannung, falls beim Verstärken was schief laufen sollte, siehst du so den Fehler sehr schnell. Grüße Jan.
Hallo Das Problem ist, dass auch eine Frequenz von 0,1HZ vorkommt. Dies bedeutet, dass es bis zu 5 Sekunden dauern kann, bis der höchste oder niedrigste Spannungswert gemessen werden kann. Wenn ich jedoch mit dem Poti die Verstärkung kleiner mache, wie weiss dass der µC, der immer nur auf Maximalwert und Minimalwert abzielt? Zusätzlich kommt noch hinzu, dass ich am Ausgang +-1,2V habe und der AD-Wandler aber nur 0-3,3V verarbeiten kann. Man könnte natürlich eine Diode nehmen, um die negative Spannungskurve zu eliminieren, aber die Diode schluckt dann wieder 0,7V von der positiven Spannung und ich könnte die 0,1V nicht AD-Wandeln. Tschüss Martin
Hi, Hm... Schade ;-) Nen Versuch wars Wert. Ne andere Idee hab ich jetzt auch net. Grüße Jan.
Wie wäre es denn mit einer mechanischen Lösung? Zwei Potis auf eine Achse montieren. Einer dient dann zur Einstellung des Verstärkers, der andere als einfacher Spannungsteiler, den du per ADC immer auslesen kannst.
Ja, so dachte ich eigentlich, hab wohl zu schnell abgedrückt. Aber dafür reicht ein Mono-Poti. Schließlich kannst du den Schleifer einmal in den OP reinstecken, und einmal in deinen A/D Wandler. Mit entsprechenden Berechnung kannst du dir dann die (theoretische) Ausgangsspannung die aus dem OP-AMP kommt im µC ausrechen, und anzeigen.
Hat der DA-Wandler keinen DA-Referenz-Spannungs-Pin? Genau für solche Anwendungen, wie Du sie beschreibst ist der nämlich üblicherweise da. Die Spannung könntest Du dann z.B. durch PWM + Tiefpaß vorgeben. Bei dem ARM von Atmel, welcher einen DA-Wandler hat, ist dieser Pin vorhanden (AT91M55800A).
nimm doch einfach einen pga2311 von ti. ist zwar eigentlich ein abschwächer für den audiobereich, aber er dürfte auch für deine anwendung geeignet sein. außerdem kannst du den baustein über spi steuern.
deine 1.Idee ist gut wenn du einen externen 16Bit DAC nimmst. z.B. DAC8551 von TI
Ich würde auch eine Lösung mit einem hochauflösenden (z.B. 16 Bit) DAC vorschlagen. Dann ist alles durch die CPU Steuerbar und sollte doch eigentlich ausreichen. Gruß Thomas
Guten Morgen Danke für eure zahlreichen Antworten. Das mit dem externen DA-Wandler ist natürlich auch eine Möglichkeit, aber man muss dann, wenn man den Sägezahn hinaufzählt und die Spannung im Prinzip ganz aufgedreht ist, immer einige Werte überspringen, da man die 2^16 Werte nicht schaffen wird, was natürlich auch kein Problem sein sollte. Der interne DA-Wandler des LPC 2138 benötigt 1µs für die Wandlung. Bei einem externen Baustein habe ich auch immer das Problem mit der Übertragung. Es könnte sein, dass ich dann die Rampe mit 100Hz nicht schaffe. Aber es ist ein guter Denkanstoß. @Hat der DA-Wandler keinen DA-Referenz-Spannungs-Pin? Das mit dem Ref-Pin ist auch keine schlechte Idee. Nur die Schwierigkeit ist, dass der Spannungsbereich des REF-Pins nur zwischen 3V und 3,6V liegen kann. Eine Möglichkeit ist mir noch eingefallen. Man könnte doch Relais einbauen, die je nach Spannung auf den entsprechenden Verstärkungswiderstand umschalten. Also sagen wir mal ich habe einen Verstärkungswiderstand, der mir die Maximalspannung des µC auf +1,2Vmax verstärkt. Dann habe ich einen zweiten Verstärkungswiderstand, der mir die Maximalspannung des µCers auf +0,6Vmax verstärkt. Wenn ich nun am LCD-Display die Spannung langsam von +1,2Vmax runterdrehe und ich bei +0,6Vmax angekommen bin, dann sollte der µCer wieder die Maximalspannung liefern und das Relais auf den anderen Verstärkungswiderstand umschalten. Auf diese Weise könnte ich mit dem internen DA-Wandler arbeiten und hätte aber auf einfache Art in niederigeren Spannungsbereichen trotzdem eine bessere Auflösung. Was haltet ihr davon? Tschüss, Martin
In vorher definierten Stufen das Rückkopplungswiderstandsnetzwerk (z.B. parallel zuschaltbare Widerstände) eines OP-Verstärkers schalten geht natürlich. In Deinem Frequenzbereich ist das auch total unproblematisch. Aber bitte keine Relais. FETs tuns auch.
Hallo Martin! Nimm doch ein "elektronisches Potentiometer" von MAXIM. Die Dinger heissen DS1666 und ich habe damit Klang und Laut- stärke bei einem TDA1524 gemacht. MfG Paul
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.