Forum: Analoge Elektronik und Schaltungstechnik # Spannungsbereich rauschneiden


von Dirk (bad_boy)


Angehängte Dateien:

Lesenswert?

Hallo Leute,

habe mal wieder ein kleines Problem. Ich habe einen Sensor der mir bei 
einer Physikalischen Größe eine entsprechende Spannung (0-5V) rausgibt. 
Das ganze soll dann von einem ADC mit 10 Bit per Mikrocontroller gelesen 
werden.

Das aber nur ein kleiner Ausgangsspannungsbereich dieses Sensors 
wirklich interessant ist und schon kleinste Änderungen der Physikalische 
Größe (Magnetfeld) gemessen werden sollen in diesem Bereich, wäre es 
hilfreich, wenn man nur den Spannungsbereich herauschneiden könnte, der 
dann verstärkt wird und so wieder auf 0-5V kommt.

Es geht um einen Bereich von 1V (siehe Grafik). Das Verstärken der 1V 
auf 0-5 Volt ist nicht das Problem. Sondern wie schneidet man den 
Bereich dort raus, also das der untere Bereich von 0-2V gekappt wird.

Es gibt nur eine Spannungsquelle von 12V Eingangsspannung und einen 
78M05 der für den Mikrocontroller und den Sensor das ganze auf 5V runter 
regelt.

Viel Platz ist auf der Platine nachher auch nicht vorhanden. Hat einer 
eine Idee wie man das Kappen der unteren 2 Volt bewerkstellingen kann ?

von Jörg R. (solar77)


Lesenswert?

Dirk K. schrieb:
> Hat einer
> eine Idee wie man das Kappen der unteren 2 Volt bewerkstellingen kann ?

Indem Du z.B. deinen Nullpunkt auf -2V legst.

: Bearbeitet durch User
von Nichtverzweifelter (Gast)


Lesenswert?

Suche nach der Standardschaltung "instrumentation amp". Eine 
Verschaltung von 3 Operationsverstärkern. Diese bilden einen einzigen 
"Mess(geräte)verstärker", der einen "plus"- und einen "minus"-Eingang 
hat.

Lege Deinen Sensor an diesen virtuellen "plus"-Eingang.

Suche nach der Industrie-Billig-Standard-Referenzspannungsquelle TL431. 
Eine "einstellbare Zenerdiode".

Justiere diese auf eine positive Festspannung von 2 Volt, lege diese 
Spannung an den "minus"-Eingang des instrumentation amps.

Er bildet die Differenz der Eingangsspannungen (beide positiv).

Verstärke die Ausgangsspannung des instrumentation amps mit dem Faktor 
5, ein weiterer Operationsverstärker, nicht invertierend.

Nun brauchst Du noch eine kleine negative Hilfsgleichspannung, dafür 
gibt es auch wieder billige Standard-ICs, Stichwort Ladungspumpe. charge 
pump

Deine Forderung war, dass die Ausgangsspannung bis null herunter gehen 
muss.

Daher brauchen die OPVs auch eine (geringe) negative Betriebsspannung. 
Diese lässt sich aber aus der positiven erzeugen.

Fertig.

von Egon D. (Gast)


Lesenswert?

Dirk K. schrieb:

> Es geht um einen Bereich von 1V (siehe Grafik). Das
> Verstärken der 1V auf 0-5 Volt ist nicht das Problem.
> Sondern wie schneidet man den Bereich dort raus, also
> das der untere Bereich von 0-2V gekappt wird.

Mit einem OPV mit Offset.

Schuss aus der Hüfte: U_in an den Plus-Eingang, 10k vom
Minus-Eingang nach +5V, 10k vom Minus-Eingang nach GND,
20k vom Ausgang auf den Minus-Eingang.

Achtung: OPV mit Rail2Rail-Fähigkeit am Ausgang verwenden.

U.U. ist ein Längswiderstand im Eingang und Klemmdioden
notwendig.

von MaWin (Gast)


Lesenswert?

Dirk K. schrieb:
> der dann verstärkt wird und so wieder auf 0-5V kommt.

Einfache Sache.

Da guckt man sich einfach Figure 11 im Datenblatt deines Sensors an

https://www.mikrocontroller.net/attachment/27041/SC17_GENERAL_MAG_2-1.pdf

Und erfährt noch was über Temperaturkompensation und ratiometrisches 
Messen.

von Wolfgang (Gast)


Lesenswert?

Dirk K. schrieb:
> Viel Platz ist auf der Platine nachher auch nicht vorhanden.

Was nützt es dir, wenn der Platz auf der Platine reicht, die Platine 
aber ihren Zweck nicht erfüllt. ;-)
Solange die Platine nicht beidseitig eng in SMD bestückt ist, findet 
sich sicher noch ein Eckchen.

> Hat einer eine Idee wie man das Kappen der unteren 2 Volt
> bewerkstellingen kann ?

Der allgemeine Ansatz ist ein Differenzverstärker (Subtrahierverstärker)
https://www.elektronik-kompendium.de/sites/slt/0210153.htm

von Dirk (bad_boy)


Angehängte Dateien:

Lesenswert?

Hallo Leute,

danke für die vielen Infos. Das mit dem Diff Opamp der eine negative 
Spannung als offset hat klingt interessant. Nur brauche ich da ja eine 
negative Spannung für und auf der Platine wirds dann wirklich eng.

Genaugenommen muss ich nichtmal die Ausgangsspannung des Sensors messen, 
sondern muss eigentlich nur wissen, wenn sich die Spannung verändert.

Wie das ganze aufgebaut ist siehe Bild.

Auf der Platine befindet sich oben die Auswertschaltung, unter der 
Platine der Sensor und darunter dann eine Achse mit einem Neodymmagneten 
und einem Luftspalt von gerade mal 1 bis 2 mm.

Die Achse steht zu 80% still und bewegt sich, wenn Sie unten seitlich 
angestoßen wird, wie ein Pendel minimal in eine Richtung und wieder 
zurück in die Ausgangslage. Und nur diese kurze Bewegung will ich 
erkennen können.

Die gesamte Platine selbst ist rund und hat einen Durchmesser von gerade 
mal 35mm.

Es ist auch nicht wichtig ob das ganze Temperaturkompensiert wird, da 
die genauen Feldstärken und sowas absolut nicht interessieren, sondern 
nur wenn sich was ändert, also die Achse sich bewegt und somit die 
Ausgangspannung sich minimal ändert. Also sowas wie Spannugsänderung in 
Impuls umwandeln oder so.

Ist sowas einfacher und kleiner zu realisieren ?

Gruss

Dirk

von Gerd E. (robberknight)


Lesenswert?

Dirk K. schrieb:
> Ist sowas einfacher und kleiner zu realisieren ?

AC Kopplung, danach verstärken

: Bearbeitet durch User
von Wolfgang (Gast)


Lesenswert?

Dirk K. schrieb:
> danke für die vielen Infos. Das mit dem Diff Opamp der eine negative
> Spannung als offset hat klingt interessant. Nur brauche ich da ja eine
> negative Spannung für und auf der Platine wirds dann wirklich eng.

Wenn du die abzuziehende Spannung als U_e1 anschließt, brauchst du keine 
negative Spannung.

von Jörg R. (solar77)


Lesenswert?

Dirk K. schrieb:
> Genaugenommen muss ich nichtmal die Ausgangsspannung des Sensors messen,
> sondern muss eigentlich nur wissen, wenn sich die Spannung verändert.

Und weshalb dann der irreführende Eröffnungsthread? Das hat doch nichts 
mit der jetzigen Anforderung zu tun.

von Dirk (bad_boy)


Lesenswert?

Jörg R. schrieb:
> Dirk K. schrieb:
>> Genaugenommen muss ich nichtmal die Ausgangsspannung des Sensors messen,
>> sondern muss eigentlich nur wissen, wenn sich die Spannung verändert.
>
> Und weshalb dann der irreführende Eröffnungsthread? Das hat doch nichts
> mit der jetzigen Anforderung zu tun.

Weil ich erst davon ausging, das es einfacher wäre, und so war es 
eigentlich auch geplant, die Spannung direkt zu messen mit dem MCU, aber 
da die Achse sich nur minimal bewegt (1/10mm Bereich wenn überhaupt) 
wäre es besser gewesen, wenn man den Spannungsbereich "heraus schneidet" 
und nur den dann verstärkt. So das ich mit den 10Bit des ADC auch eine 
Spannungsänderung messen und erkennen kann.

Und das eigentlich nur die Spannungsänderung ansich erkennbar sein muss 
und ob das vielleicht einfacher zu realisieren geht wegen Platzmangel, 
war eine Frage und keine Feststellung meinerseits. :)

von Wolfgang (Gast)


Lesenswert?

Dirk K. schrieb:
> Und das eigentlich nur die Spannungsänderung ansich erkennbar sein muss
> und ob das vielleicht einfacher zu realisieren geht wegen Platzmangel,
> war eine Frage und keine Feststellung meinerseits. :)

Bleibt noch die Frage, ob sich die Spannung innerhalb von Mikrosekunden 
oder innerhalb von Wochen ändert. Und natürlich musst du irgendwie 
festlegen, was eine Änderung in deinem Sinne ist. Jedes Signal hat einen 
gewissen Rauschanteil, d.h. es ändert sich dauernd etwas.

von Jörg R. (solar77)


Lesenswert?

Dirk K. schrieb:
> aber
> da die Achse sich nur minimal bewegt (1/10mm Bereich wenn überhaupt)

Du hast doch einen Wert wenn die Achse in Ruhestellung ist, nehme ich 
deine Grafik aus dem Eröffnungsthread sind es 2V. Erfolgt eine Bewegung 
sind es 2V + x. Das kann der uC doch auswerten, ohne den Bereich zu 
verschieben bzw. ein Offset zu erzeugen. Alternativ ginge ein 
Komparator, mit entsprechendem Bauteileaufwand.

Oder habe ich dein Problem komplett falsch verstanden?

von MaWin (Gast)


Lesenswert?

Jörg R. schrieb:
> Und weshalb dann der irreführende Eröffnungsthread? Das hat doch nichts
> mit der jetzigen Anforderung zu tun.

Damit Salamischeiben zu Kochschinkenscheiben werden....

von Einer (Gast)


Lesenswert?

Dirk K. schrieb:
> Das ganze soll dann von einem ADC mit 10 Bit per Mikrocontroller gelesen
> werden.

> Das Verstärken der 1V auf 0-5 Volt ist nicht das Problem.

> Viel Platz ist auf der Platine nachher auch nicht vorhanden.

Oh man...

Lass den ollen Verstärker weg, und nimm statt dessen einen modernen ADC 
mit integrierter Referenzspannung und Verstärker.

von wendelsberg (Gast)


Lesenswert?

Dirk K. schrieb:
> Wie das ganze aufgebaut ist siehe Bild.

Ja, mechanisch, aber nicht die Eingangsschaltung des uC.

MaWin schrieb:
> https://www.mikrocontroller.net/attachment/27041/SC17_GENERAL_MAG_2-1.pdf

WENN es denn eine dieser Sensoren ist, die sind ja nach dem 
Brueckenprinzip aufgebaut und geben damit keine 0-5V aus.
Allerdings ist der Sensortyp ja bisher geheim.

wendelsberg

von Falk B. (falk)


Lesenswert?

Nichtverzweifelter schrieb:
> Daher brauchen die OPVs auch eine (geringe) negative Betriebsspannung.
> Diese lässt sich aber aus der positiven erzeugen.

Die kann man auch weglassen, wenn man etwas pragmatisch rangeht und ca. 
100mV über 0V und bzw. unter VCC mit dem OPV-Ausgangssignal bleibt. Der 
Verlust an Auflösung ist nebensächlich.

von Dirk (bad_boy)


Lesenswert?

wendelsberg schrieb:
> WENN es denn eine dieser Sensoren ist, die sind ja nach dem
> Brueckenprinzip aufgebaut und geben damit keine 0-5V aus.
> Allerdings ist der Sensortyp ja bisher geheim.

Da is nix geheim, weil ich noch nicht genau weiß mit welchem das am 
einfachsten realisierbar wird.

Den, den ich als Erstes rausgesucht hatte war der "SS49E" mit 5V 
betrieben und laut Datenblatt liefert der dann zwischen 1V bis 4V an 
Ausgangsspannung.

Nur ist da dann die Frage, und das weiß ich nicht da ich noch nie mit 
Hall/Magnetsensoren gearbeitet habe, ob die geringe Bewegung der Achse 
eine messbare Spannungsänderung hervor ruft. Das ganze soll dann von 
einem Atmel Attiny 45 gemessen werden ob sich die Spannung ändert. Und 
der ADC von dem hat halt nur 10bit.

Die Bewegung der Achse selbst ist gering, da sie mit dem anderen Ende 
vor einen Gegenstand (kann alles mögliche sein) fährt. Also keine hohe 
Frequenz zu erwarten ist. Doch sollte der Atmel dann bei der geringsten 
Lageänderung das messen können und dann einen Ausgang schalten, so das 
man weiß das der Gegenstand angefahren wurde.

Interessant sieht halt auch (durch den Link hier von euch) der "KMZ10" 
aus, den es ja auch in unterschiedlichen Empfindlichkeiten gibt. Und 
wohl empfindlicher zu sein scheint wie der SS49.

Also der Magnet bewegt sich extrem minimal, die Änderung will ich messen 
können, verstärken falls nötig, in den ADC vom Attiny 45 rein und wenn 
der merkt, da hat sich was geändert wird ein Ausgang 1 Sekunde lang auf 
High und ein anderen auf Low gezogen und diese beiden Signale gehen dann 
an eine anderen Karte.

Das ganze ist in einem kleinen Zylindrischen Gehäuse eingebettet mit 
Aussendurchmesser von 40-45mm, deshalb die Platinengröße D35 oder 
weniger.

Da gibs ansonsten nichts geheimes dran. ;)

von wendelsberg (Gast)


Lesenswert?

Dirk K. schrieb:
> Interessant sieht halt auch (durch den Link hier von euch) der "KMZ10"
> aus, den es ja auch in unterschiedlichen Empfindlichkeiten gibt.

Und der ist durch sein Brueckenprinzip gut an die beiden Eingaenge eines 
OPV zu bekommen.

wendelsberg

von wendelsberg (Gast)


Lesenswert?

Dirk K. schrieb:
> Attiny 45

hat u.a.

 10-bit ADC•  4 Single Ended Channels•  2 Differential ADC Channel Pairs 
with Programmable Gain (1x, 20x)

Also ein differentieller ADC mit 20x Vorverstaerkung intern ist doch 
sicher die halbe Miete bei Verwendung eines Bruecken-Hall-Sensors.
Bestell den empfindlichsten, wenn der uebersteuert wird, kannst Du den 
immer noch ein wenig weiter weg montieren oder den Eingangsverstaerker 
des ADC anders programmieren.

wendelsberg

Beitrag #6847073 wurde von einem Moderator gelöscht.
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.