Hallo liebe Freunde! Ich wende mich mit einem "analog-digital-Problem" an euch. Es geht um die analoge Sektion vor der AD-Wandlung. Der Sensor ist ein Drucksensor mit DMS (mehrere davon, daher suche ich möglichst eine universelle Schaltung). Die Messzellen haben natürlich alle verschiedene Offset-Werte und auch verschiedene Spannen. Meist ist der Offset negativ und das Ausgangssignal geht bei Belastung dann ins positive (gemessen zwischen den Brückenanschlüssen). Mal ein paar Daten - die Messzelle wird aus der internen Referenz des uCs gespeist. Diese besträgt 1,2V (MSP430F2013 mit 16 Bit S/D-Wandler). Mal ein paar Zahlen: Eingang: 1,2V Referenz Vout+ (gegen Masse, unbelastet): 601,98mV Vout- (gegen Masse, unbelastet): 602,55mV Vout (Spannung zwischen den Zweigen, unbelastet): -549uV Die Spannungen der Ausgänge bewegen sich also um den Mittelwert der Eingangsspannung. Vout+ (gegen Masse, belastet): 625,7mV Vout- (gegen Masse, belastet): 614,2mV Vout (Spannung zwischen den Zweigen, belastet): +11,5mV Der ADC vom MSP kann an seinen Eingängen maximal eine Eingangsspannung von 0,6V. Der Wandler arbeitet zwar auch differentiell, könnte also theoretisch selber die Differenz daraus ermitteln, ABER: Da die Ausgänge der Zelle sich schon selber über 0,6V befinden, kann der Wandler damit nicht umgehen. Ich muss also um und bei 600mV von beiden Eingängen subtrahieren, damit der ADC die Eingangsspannung überhaupt ab kann. So, von einem Signal 600mV abziehen ist jetzt nicht das Problem :) Die Frage ist jetzt eher, was am sinnvollsten ist. Hierbei kommt die Eigenschaft des ADCs dazu, dass man entweder differentiell messen kann, oder halt single-ended. Was jetzt besser ist, gilt es für mich grad herauszufinden. Bei der differentiellen Messung habe ich einen Eingangsspannungsbereich von +/- 0,6V für ein Ergebnis von 0x0000 bis 0xFFFF im Offset-Binary-mode, also 16 Bit für 1,2V Spanne. Im unipolaren mode kann ich bis +0,6V und bekomme am Ausgang halt 0x0000 bis 0xFFFF für eben diese 0,6V. Die Auflösung ist hier also wesentlich feiner, aber ein analoges Signal auf einen größeren Bereich verstärkt ist natürlich etwas unanfälliger für Bitwackeleien...OK, vorausgesetzt die analoge Stufe ist ordentlich aufgebaut. So, aber zurück zum Problem: Entweder nehme ich jetzt das bipolare Signal und bleibe dabei, muss aber von beiden Ausgängen vorher ca. 600mV abziehen und verstärke dann die Signale auf bis zu 600mV (der maximale Ausschlag des positiven Ausgangs ist hier dann maßgebend, die volle Spanne erhalte ich also auch nicht). Oder ich messe unipolar mittels vorgeschaltetem Instr.-Verstärker und füge einen Offset hinzu, sodass das ganze nicht ins negative geht. Achso, ja, auch nicht unwichtig: NUR POSITIVE VERSORGUNG VORHANDEN. Ganz auf 0V Eingang und Ausgang kann ich da auch nicht gehen. Mhh, ich hoffe mein Vorhaben ist erstmal so einigermaßen klar geworden. Jetzt wäre ich um Ratschläge sehr dankbar.
Da der MSP430F20x3 schon einen Instrumentenverstärker enthält, wird man nicht so blöde sein, einen externen extra zu kaufen und anzuschliessen. Da der Eingangsspannungsbereich bei 1.2V Versorgung der DMS überschritten wird, versorgt man eben den DMS mit weniger, Prinzip Spannungsteiler an Vref bevor ein OpAmp diese Spannung stabil genug puffert damit sie einen DMS versorgen kann, denn du kannst Vref ja nur mit 0.5mA belasten und wirst sowieso einen OpAmp einsetzen. Pfennigfuchser nehmen zur Stromverstärkung von Vref einfach einen NPN Transistor als Emitterfolger, dessen Ausgangsspannung liegt schon mal 0.7V unter VRef und bringt mindestens 100mA, aber die Versorgungsspannugn des DMS ist nun temperaturabhängig von der Laune dieses Transistors. Kein Problem, denn man kann sie single ended mit einem weiteren A/D-Eingang messen, und in Software dann korrekturrechnen.
MaWin schrieb: > Da der MSP430F20x3 schon einen Instrumentenverstärker enthält, wird man > nicht so blöde sein, einen externen extra zu kaufen und anzuschliessen. Hi MaWin, ich finde im Datenblatt und im User's Guide leider keine Zeichnung zum genauen Aufbau. Kennst du dich mit dem F2013 aus? Ich verstehe es zumindest so, dass der Eingang nicht über die 0,6V sein darf. Oder zieht der MSP intern selber die Signale voneinander ab, kann sie dann verstärken und digitalisiert sie danach? Sprich: +IN (0,65V) ---- |--- +0,02V ----> GAIN ----> Wandlung -IN (0,63V) ---- Ich werde ehrlich gesagt aus dem Datenblatt nicht 100% schlau.
> Ich verstehe es zumindest so, dass der > Eingang nicht über die 0,6V sein darf Richtig (zumindest misst der er darüber nicht mehr richtig) Aber was hast du an VCC | Vref --|< |E +-+-+-- single ended A/D (misst ca. 0.6V bei 1.2V Bereich) | | R R | | | +-- DMS | | differential PGA sigma delta A/D (ca. 0.3V Signale) +---(-- | | R R | | GND GND nicht verstanden ?
MaWin schrieb: > nicht verstanden ? Ich hab deinen Vorschlag verstanden, ich wollte jetzt grad erstmal nur gerne die interne Funktion des Wandlers verstehen. Wenn ich einen differentiellen Wandler habe, dann ist doch eigentlich das Ergebnis (Vin+ - Vin-) * GAIN. Angenommen, ich habe halt ein Signal von 1,6V an Vin+ und 1,5V an Vin-, dann wäre das Differenzsignal ja +0,1V und das könnte ich jetzt noch bis maximal +600mV verstärken...so kenne ich es von anderen Differenzwandlern. Ist es hier beim MSP auch so? Ich habe nämlich gerade im DB noch eine Angabe gefunden: Absolute Input rRange / Common Mode Input Range Avss - 0,1V...AVcc. Also sollte das mit dem Signal doch eigentlich gehen bei 3V Avcc, oder nicht?
So, ich hab jetzt mal ein bisschen herumprobiert. Also ich kann ja schon noch mehr als die 0,6V anlegen. Habe ich z.B. 1,1V an IN+ und 0,6V an IN-, dann kommen da auch +0,5V als Ergebnis raus. Aber jetzt steht noch im Datenblatt, dass man z.B. bei externer Quelle nicht bis über 80% der Referenz benutzen soll. Außerdem steht da, dass für GAIN = 1 eine Eingangsspannung von +/-500mV vorgesehen ist. Kennt sich zufällig jemand mit dem F2013 aus?
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.