Forum: Mikrocontroller und Digitale Elektronik Das große ADC Quiz


von markus m. (mspmarkus)


Angehängte Dateien:

Lesenswert?

Hi,
Ich stehe vor einem Problem und bräuchte ganz dringen Hilfe!

Oben habe ich schnell meine Schaltung skizziert.
Das Problem ist folgendes:

Ich will sowohl die Flexiforce Drucksensoren, als auch den 
Beschleunigungssensor mit dem selbem ADC einlesen.
Die beiden haben nicht den selben Ground durch den Step up Converter.


Bis jetzt ist mir fogendes eingafallen:
externe Referenzspannungen(Am Olimex MSP430F169LCD Development Board 
konnte ich keine Pins dafür finden, deshalb leider nicht möglich 
http://www.olimex.com/dev/msp-169lcd.html)
Den 0V Anschluss vom Step Up Converter auf Ground schließen????? Könnte 
das was bringen? Bzw. Würde er das aushalten? Das Datenblatt ist leider 
sehr kurz...
Den flexiforce ebenfalls mit nach dem Step Up Converter 
anschließen(angeblich misst der Flexiforce höhere Druckwerte unter 
höherer Spannung, ergo mein Ergebniss wird ungenauer... Wäre aber noch 
ok, wenn der Volage Inverter nicht max 5V5 vertragen würde. Wieso 
liefert der Step Up Converter eigentlich keine 5V sonder 5V7?)

Bin ratlos und für jeden Tipp oder Wegweiser dankbar!!!

von Xetor (Gast)


Lesenswert?

Möglicherweise kannst Du Dir mit einer OP-Schaltung behelfen um das 
Signal anzupassen. Mit einem "Verstärkungsfaktor von 0,877 kommst Du auf 
einen Spannungsbereich von 0-5V.  Wenn Du Probleme mit negativen 
Spannungen am Eingang des µC hast, kann eine Virtuelle Masse Abhilfe 
schaffen.

von Dennis (Gast)


Lesenswert?

Ich kenne den "Flexiforce"-Sensor nicht, aber wieso bekommt der eine 
negative Spannung?

Der MSP kann natürlich keine negativen Spannungen verarbeiten, höchstens 
ein differentielles Signal, sofern er über einen entsprechenden ADC 
verfügt, wie den SD16. Ansonsten kannste auch zwei Kanäle einzeln messen 
und die Differenz in Software bilden.

Aber negative Spannungen sind nicht drin.

von Dennis (Gast)


Lesenswert?

Ich hoffe nicht, weil du nur den invertierenden OP kennst ;) Der Brauch 
natürlich auch eine bipolare Versorgung. Daher: Wenn es geht, negative 
Spannungen vermeiden! Lieber das Bezugspotential virtuell anheben.

von markus m. (mspmarkus)


Lesenswert?

Dennis schrieb:
> Ich kenne den "Flexiforce"-Sensor nicht, aber wieso bekommt der eine
> negative Spannung?
>

Weil er invertierend angeschlossen wird und so einen positiven Wert 
ausgibt der nicht dem Wiederstand sondern dem Leitwert enspricht. Und 
der hat einen linearen Verlauf bei dem Sensor.
Der funktioniert also.

> Mit einem "Verstärkungsfaktor von 0,877 kommst Du auf
>einen Spannungsbereich von 0-5V.

Das klingt nach einer guten Idee! Da brauch ich halt noch einen 2. OPV 
weil der beim Flexiforce Sensor mit 3V3 betrieben wird um mir gleich die 
Spannung vor dem uC zu begrenzen...
Aber das werd ich mal testen danke!!

von Xetor (Gast)


Lesenswert?

Dennis schrieb:
> weil du nur den invertierenden OP kennst

OP-Schaltungen sind mir schon geläufig. Aber in der Schaltung ist von 
-2,87 V die Rede.

von Dennis (Gast)


Lesenswert?

markus markus schrieb:
> Weil er invertierend angeschlossen wird

Also wenn es sich um einen variablen Widerstand handelt (und danach 
sieht deine Zeichnung aus), dann würde ich definitiv mit einem 
nicht-invertierendem Verstärker arbeiten, ggf. noch den Offset abziehen. 
Wenne nen Leitwert brauchst, dann berechne das in Software, die ist 
gratis und wesentlich variabler.

von Dennis (Gast)


Lesenswert?

Zeig mal das Datenblatt

von markus m. (mspmarkus)



Lesenswert?

Nagut dann wart ich doch noch mit dem anlöten vom 2. OPV ;)
VIeleicht kommst du ja noch auf eine bessere Idee!

von Xetor (Gast)


Lesenswert?

Dennis schrieb:
> dann berechne das in Software, die ist
> gratis und wesentlich variabler

Würde ich auch so machen. Vor allem kannst Du den Drucksensor so per 
Software kalibrieren.

von Ansgar K. (malefiz)


Lesenswert?

markus markus schrieb:
> Weil er invertierend angeschlossen wird und so einen positiven Wert
> ausgibt der nicht dem Wiederstand sondern dem Leitwert enspricht. Und
> der hat einen linearen Verlauf bei dem Sensor.
> Der funktioniert also.

Wie soll das den gehen Widerstand und Leitwert sind doch Mathematisch 
zusammenhänget defibniert da kann das eien nicht Linear sein und das 
andere nicht.

Widerstand =1/Leitwert

von Michael (Gast)


Lesenswert?

Hallo Markus,

Warum Betreibst du den Kraftsensor nicht einfach an einem 
Spannungsteiler?

3.3V - R (ca 200 Ohm) - Sensor - GND

Die Beispielschaltung hat hier nur den Zweck den Sensor Analog zu 
linearisieren. Diese Linearisierung kann aber auch einfach dein uC 
machen.

Mfg

Michael

von markus m. (mspmarkus)


Lesenswert?

Und was spricht gegen die analoge linearisierung?
Immerhin spart mir das Rechenzeit, ich taste mit 1000Hz ab, da macht so 
eine Umrechnung schon was aus. Ausserdem hab ich die schon gebaut ;)
Aber wenns wirklich Gründe gibt kommt sie natürlich wieder raus.

von Xetor (Gast)


Lesenswert?

Es spricht nichts dagegen. Wenn die Berechnung der Bauteile ausreichend 
genau ist, ist das kein Problem. Du brauchst eben nur mehr Bauteile. 
Bevor es µCs gab, wurde alles analog liniarisiert und funktionierte 
trotzdem.

von markus m. (mspmarkus)


Lesenswert?

>
> Wie soll das den gehen Widerstand und Leitwert sind doch Mathematisch
> zusammenhänget defibniert da kann das eien nicht Linear sein und das
> andere nicht.
>
> Widerstand =1/Leitwert

Probiers mal aus mit Excel oä. Das stimmt schon so ...

Danke für die zalreichen Posts! Ich meld mich dann wenn ich weiss wies 
mit den 0-5V ausgegangen ist!

von markus m. (mspmarkus)


Lesenswert?

Mit einem normalen nicht invertierenden Verstärker kann ich die 
Verstärkung von 0,78 nicht errecihen oder?

von markus m. (mspmarkus)


Lesenswert?

Xetor schrieb:
> Möglicherweise kannst Du Dir mit einer OP-Schaltung behelfen um das
> Signal anzupassen. Mit einem "Verstärkungsfaktor von 0,877 kommst Du auf
> einen Spannungsbereich von 0-5V.  Wenn Du Probleme mit negativen
> Spannungen am Eingang des µC hast, kann eine Virtuelle Masse Abhilfe
> schaffen.


0,877 sorry...

von markus m. (mspmarkus)


Lesenswert?

Hmm nagut ich nehm einfach mal einen Spannungsteiler davor...

von Yalu X. (yalu) (Moderator)


Angehängte Dateien:

Lesenswert?

markus markus schrieb:
> Die beiden haben nicht den selben Ground durch den Step up Converter.

Kurze Antwort:

Dann verbinde die beiden Grounds einfach miteinander. Deine Bedenken,
dass das dem Step-Up-Converter schaden könnte, sind unbegründet, da
bei diesem Eingang und Ausgang voneinander potentialgetrennt sind.


Längere Antwort:

Die Schaltung hat noch Optimierungspotential:

Der Spannungsinverter ist ungenau, da nicht geregelt, entsprechend wird
das Messergebnis ausfallen.

Ich würde die Flexiforce-Auswertung wie im Anhang realisieren, dann
kannst du dir den Inverter sparen, und das Ganze wird sehr viel genauer.
Der verwendete Opamp kann irgendein Doppel-Rail-to-Rail-Typ sein, also
bspw. der MCP6002 oder TS912.

Der Linke Opamp liefert am Ausgang 4,3V, am invertierenden Eingang des
rechten Opamp liegen 3,3V an. Damit ist die Spannung am Flexiforce 1V,
wie in der Schaltung im Datenblatt, nur auf einem positiven statt auf
einem negativen Potential. Der rechte Opamp setzt den Strom durch den
Flexiforce (der proportional zu seinem Leitwert ist) in eine Spannung
um, die dem ADC zugeführt wird. Da die Schaltung andersherum arbeitet
als die im Datenblatt vorgschlagene, musst der ADC-Wert per Software
vom Maximalwert des ADC (4095) subtrahieren, um ein zum Leitwert pro-
portionales Ergebnis zu erhalten.

Im Gegensatz zur Schaltung aus dem Datenblatt arbeitet diese Schaltung
ratiometrisch, wenn der MSP430 die Versorgungsspannung als ADC-Referenz
verwendet. Damit sind die Messergebnisse weitgehend unempfindlich
gegenüber Spannungsschwankungen der 3,3V- und 5V-Versorgung.

Durch Anpassung von R1/R2 kannst du die Spannung am Flexiforce auf einen
anderen Wert als 1V und mit R3 den Verstärkungsfaktor einstellen.

Da der Opamp mit 5V betrieben wird und der ADC nur 3,3V verträgt, soll-
test du sicherheitshalber noch einen Serienwiderstand von etwa 4,7kΩ vor
den ADC-Eingang schalten. Der Opampausgang liefert zwar schaltungsbe-
dingt normalerweise nicht mehr als 3,3V, das könnte aber beim Ein- oder
Ausschalten der Versorgungsspannung kurzzeitig anders sein.

> Wieso liefert der Step Up Converter eigentlich keine 5V sonder 5V7?)

Wahrscheinlich ist die Belastung zu gering. Zitat aus dem Datenblatt:

  "Minimum Load · 10% […] Operation at no load will not damage device
  but may not meet all specifications."

Außerdem scheint der Converter nicht besonders gut zu regeln:

  "Load Regulation · 7.5% max for a 10-100% load change"

Wenn der angeschlossene Beschleunigungssensor (welcher Typ ist das?)
also empfindlich auf Spannungsschwankungen reagiert, solltest du die 5V
auf andere Weise erzeugen.

von markus m. (mspmarkus)


Angehängte Dateien:

Lesenswert?

Wow!
Danke für die ausführliche Antwort!
Ich werde mir das alles mal durchdenken!
Da ich eher aus der Softwareecke komme könnte das ein bisschen dauern ;)

>Wenn der angeschlossene Beschleunigungssensor (welcher Typ ist das?)
Es handelt sich um den ADXL193.
Leider ist das Ausgangsignal sogar proportional zur Versorgung...
Ich habe den Converter eigentlich gewählt weil ich mir dachte ein Ding 
das dafür gebaut ist wird das bestimmt am besten machen.

Vielen Dank nochmal Yalu, du hast mich jetzt schon einen riesen Schritt 
weitergebracht!

von markus m. (mspmarkus)


Lesenswert?

@yalu könntest du vieleicht das eagle file uploaden.
Das würde das durchgehen der Schaltung noch einfacher machen!
Danke!!

von markus m. (mspmarkus)


Lesenswert?

war gar nicht so schlimm wie gedacht!
Danke für den Input!


>Wenn der angeschlossene Beschleunigungssensor (welcher Typ ist das?)
>also empfindlich auf Spannungsschwankungen reagiert, solltest du die 5V
>auf andere Weise erzeugen.

Was wäre denn da das beste? bis auf "normal" verstärken mittels OPV und 
dem Step Up Converter kenne ich nichts...

von Yalu X. (yalu) (Moderator)


Angehängte Dateien:

Lesenswert?

markus markus schrieb:
> Es handelt sich um den ADXL193.
> Leider ist das Ausgangsignal sogar proportional zur Versorgung...

So etwas habe ich mir fast gedacht. Solche Sensoren sind oft für ratio-
metrische Auswertung gemacht, bei der die Versorgungsspannung des Sen-
sors gleichzeitig die Referenzspannung des ADC ist. Man spart sich damit
teure Spannungsreferenzen auf beiden Seiten.

markus markus schrieb:
> @yalu könntest du vieleicht das eagle file uploaden.

Das ist kein Eagle, sondern LTspice, s. Anhang.

markus markus schrieb:
> Was wäre denn da das beste? bis auf "normal" verstärken mittels OPV und
> dem Step Up Converter kenne ich nichts...

Entweder du suchst einen genaueren Step-Up oder versuchst, die 5V
anderweitig zu erzeugen. Womit versorgst du denn das Olimex-Board? Das
hat ja einen 3,3V-Längsregler eingebaut und braucht damit von extern
ebenfalls eine höhere Spannung als 3,3V. Vielleicht kann man damit etwas
anstellen.

von markus m. (mspmarkus)


Lesenswert?

Meinte eh LtSpice. Hab mich vertan...
Naja ich verwende einen externen 3V3 Regler. Da das Ding ja nicht für 
immer am Dev Board laufen soll. Wäre für meine Anwendung (in einen 
Handschuh) ein bisschen zu groß ... hmm ich könnte einen stärkeren Akku 
nehmen und einen 2. Step Down verwenden... Die sind zumindest der 3V3 
den ich hab genauer....
Ich werd mich mal umsehen, vielen Dank!!!

von Yalu X. (yalu) (Moderator)


Lesenswert?

markus markus schrieb:
> Naja ich verwende einen externen 3V3 Regler. Da das Ding ja nicht für
> immer am Dev Board laufen soll. Wäre für meine Anwendung (in einen
> Handschuh) ein bisschen zu groß ... hmm ich könnte einen stärkeren Akku
> nehmen und einen 2. Step Down verwenden

Ja, das wäre eine Lösung. Da der ADXL193 nur ein paar mA Strom braucht,
könntest du ihn aber per Opamp mit Verstärkung 5/3,3 versorgen, ähnlich
wie ich es in obiger Schaltung für die 4,3V für den Flexiforce gemacht
habe. Damit wäre das ratiometrische Messprinzip wieder gegeben.

Apropos wenig Strom: Mir ist gerade eingefallen, dass bei der obigen
Flexiforce-Schaltung bei maximaler Kraft ein Strom von 18mA fließt, der
von den beiden Opamps kommen muss. Einige Opamps können das zwar, aber
evtl. wäre es besser, die Spannung am Flexiforce auf 0,5V oder 0,3V zu
reduzieren und dafür die anschließende Verstärkung entsprechend zu
erhöhen.

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
Noch kein Account? Hier anmelden.