Forum: Mikrocontroller und Digitale Elektronik Bereich eines Seilzugsensors messen


von Martin B. (Firma: BINE Automatentechnik ◔) (pac-man)


Lesenswert?

Hi,

Ich zerbreche mir den Kopf darüber wie ich nur einen Teilbereich eines 
Seilzugsensors auslesen kann.

Hintergrund, ich möchte eine Bewegung messen die im Hub nur 100mm ist. 
Der Sensor hat einen Bereich von 600mm. Der Messbereich liegt durch die 
verschiedenen Einbauarten nicht immer an der gleichen Stelle. ZB. mal 
von 200-300mm, mal von 400-500mm.

https://www.distrelec.de/de/seilzuggeber-600mm-resistiv-kuebler-d5-350b-a334-0000/p/30100554?q=&pos=16&origPos=16&origPageSize=10&track=true

Wie kann ich diesen Bereich "elektrisch ausschneiden" damit ich auf 
diesen 100mm eine 10Bit Auslesung machen kann wegen der Genauigkeit.

Gruß, Martin

von Wolfgang (Gast)


Lesenswert?

Martin B. schrieb:
> Wie kann ich diesen Bereich "elektrisch ausschneiden" damit ich auf
> diesen 100mm eine 10Bit Auslesung machen kann wegen der Genauigkeit.

Nimm einen Wandler mit mindestens 13 Bits und erledige den Rest im 
Rechner. Oder wer soll immer an der "Ausschneideelektronik" drehen, 
damit der Ausschnitt richtig liegt.
Welche Zeitauflösung brauchst du?
p.s.
Die Auflösung ändert nichts an der Genauigkeit.

von Martin B. (Firma: BINE Automatentechnik ◔) (pac-man)


Lesenswert?

Wolfgang schrieb:
> Oder wer soll immer an der "Ausschneideelektronik" drehen,
> damit der Ausschnitt richtig liegt.

Einmal eingebaut ändert sich nichts mehr aber jeder Einbau ist 
unterschiedlich.

Wolfgang schrieb:
> Welche Zeitauflösung brauchst du?

Die ist unkritisch. Zwischen 0 und 100mm vergehen etwa 10 Sekunden.

Wolfgang schrieb:
> Die Auflösung ändert nichts an der Genauigkeit.

bei 100mm hab ich eine Auflösung von 0,1mm, bei 600 etwa 0,6mm. Hab ich 
etwas falsch verstanden?

Gruß

von Oho! (Gast)


Lesenswert?

Ja!

von Yalu X. (yalu) (Moderator)


Lesenswert?

Du kannst durch die Einengung des Messbereichs den Quantisierungsfehler
reduzieren und damit prinzipiell die Genauigkeit erhöhen. Allerdings
solltest du beachten, dass der Linearitätsfehler des Sensors bis zu
0,35% betragen kann, was bei 600mm Messbereich schon 2,1mm entspricht.
Da bringt die Verbesserung der Auflösung von 0,6mm auf 0,1mm keinen
großen Gewinn.

Du musst auch mit einem längerfristigen Ansteigen des Fehlers auf Grund
von Verschleiß des im Sensor eingebauten Potentiometers rechnen. Dazu
sind leider keine Angabe im Datenblatt zu finden.

Falls der Linearitätsfehler und die Alterung in deiner Anwendung keine
Rolle spielen, kannst du den Messbereich durch Addition eines passenden
Offsets mittels einer Opamp-Schaltung einengen. Wie das genau geht,
hängt von folgenden Faktoren ab:

- Schnittstelle des Sensors (Potentiometer, 0..10V oder 4..20mA)

- Messbereich des ADC

- zur Verfügung stehende Referenzspannungsquellen für die Generierung
  des Offsets

: Bearbeitet durch Moderator
von Klaus R. (klara)


Lesenswert?

Martin B. schrieb:
> bei 100mm hab ich eine Auflösung von 0,1mm, bei 600 etwa 0,6mm. Hab ich
> etwas falsch verstanden?

10 Bit sind 1024. Insofern trifft die Auflösung von 0,1 mm in etwa zu. 
Nimm doch einfach einen 12 Bit oder sofort 16 Bit Wandler. Beim 16 Bit 
Wandler kannst Du die letzten beiden Bits vergessen, die dürften nicht 
konstant sein.

Denk auch an die Toleranzen gemäß Datenblatt. Genauer werden die 
Messungen sicher nicht sein.
mfg Klaus

von Wolfgang (Gast)


Lesenswert?

Yalu X. schrieb:
> Du kannst durch die Einengung des Messbereichs den Quantisierungsfehler
> reduzieren und damit prinzipiell die Genauigkeit erhöhen.

Wenn ein Sensor einen Fehler von 1% hat, nützt es für die Genauigkeit 
überhaupt nichts, mit 16Bit zu messen. Das erhöht nur die Auflösung und 
verringert den Quantisierungsfehler. Trotzdem sinkt der Messfehler nicht 
unter 1%.

von c-hater (Gast)


Lesenswert?

Klaus R. schrieb:

> Nimm doch einfach einen 12 Bit oder sofort 16 Bit Wandler.

Ja, Klasse...

Die Sensor-Hardware kann effektiv gerade mal was zwischen 7 und 8 
nützlichen Bits liefern und wir erschlagen das Problem mit einem 16 Bit 
DA-Wandler...

Tsss...

von Martin B. (Firma: BINE Automatentechnik ◔) (pac-man)


Lesenswert?

Yalu X. schrieb:
> Allerdings
> solltest du beachten, dass der Linearitätsfehler des Sensors bis zu
> 0,35% betragen kann, was bei 600mm Messbereich schon 2,1mm entspricht.

Oh, hab ich übersehen. Dann spielt es ja nicht wirklich eine Rolle. 
Danke fürs Mitdenken.

Gruß, Martin

von Klaus R. (klara)


Lesenswert?

c-hater schrieb:
> Klaus R. schrieb:
>
>> Nimm doch einfach einen 12 Bit oder sofort 16 Bit Wandler.
>
> Ja, Klasse...
>
> Die Sensor-Hardware kann effektiv gerade mal was zwischen 7 und 8
> nützlichen Bits liefern und wir erschlagen das Problem mit einem 16 Bit
> DA-Wandler...

Martin B. schrieb:
> Der Messbereich liegt durch die
> verschiedenen Einbauarten nicht immer an der gleichen Stelle. ZB. mal
> von 200-300mm, mal von 400-500mm.

Mit 12 Bit oder 16 Bit kann er seine Lupe platzieren wo er will. Die 
paar Cent würde ich für diese Freiheit gerne spendieren.?
mfg Klaus

von Wolfgang (Gast)


Lesenswert?

Yalu X. schrieb:
> Allerdings solltest du beachten, dass der Linearitätsfehler des Sensors
> bis zu 0,35% betragen kann, was bei 600mm Messbereich schon 2,1mm
> entspricht.
Linearitätsfehler lassen sich in der Software kompensieren, sofern der 
Sensor stabil arbeitet.

von Toby P. (Gast)


Lesenswert?

Klaus R. schrieb:
> Mit 12 Bit oder 16 Bit kann er seine Lupe platzieren wo er will. Die
> paar Cent würde ich für diese Freiheit gerne spendieren.

Das kann er auch mit 7 Bit oder 3. Es ändert nichts an den 
Ungenauigkeiten des Sensors. Da ist wohl ein Poti drin, das ist auch 
nicht langzeitstabil. Je nach Abnutzung ändert es seine Werte.


Martin B. schrieb:
> Wie kann ich diesen Bereich "elektrisch ausschneiden" damit ich auf
> diesen 100mm eine 10Bit Auslesung machen kann wegen der Genauigkeit.

Gar nicht, du bist out of specs und brauchst einen anderen Sensor.

von c-hater (Gast)


Lesenswert?

Wolfgang schrieb:

> Linearitätsfehler lassen sich in der Software kompensieren, sofern der
> Sensor stabil arbeitet.

Was erwartest du diesbezüglich von einem mechanischen Poti?

Tsss...

von Martin B. (Firma: BINE Automatentechnik ◔) (pac-man)


Angehängte Dateien:

Lesenswert?

Obwohl das Thema ja durch ist, trotzdem eine Frage wegen der Logik.

Könnte man das so lösen wie auf dem Bild? Spannung am Seilzugsensor 12V. 
Seilzug wird an den Anschlag gefahren bei dem am Schleifer die höchste 
Spannung anliegt, im Bild ganz oben. Mit dem Poti wird die Spannung am 
Messpunkt auf 5V gestellt. Dadurch hätte ich zumindest einen Teil der 
Lupe.

Gruß

von Philipp K. (philipp_k59)


Lesenswert?

Wir haben auf der Arbeit ähnliche Sensoren mit einem 11 Bit GreyCode 
Ausgang, Wiederholungsgenauigkeit bei Tausend zügen am Tag besser 0.1mm 
auf 600mm über Monate. Die sensoren funktionieren Jahrzehnte.

Bei der Potiversion verschleissen irgendwann die Schleifbahnen, ich 
glaube die die ich kenne haben ein anderes Messsystem.

von Klaus R. (klara)


Lesenswert?

Martin B. schrieb:
> Obwohl das Thema ja durch ist, trotzdem eine Frage wegen der Logik.

Wir wissen der Sensor wird mit 12 V versorgt und ist so etwas wie ein 
Poti. Dein Schaltbild sagt uns der AD-Wandler ist wohl ein AVR - 
AD-Wandler und verträgt 5,0 V. Der Sensor müßte doch vermutlich 0 - 12 V 
liefern, bei 0 - 600 mm. Wie passt Du denn jetzt die Sensorspannung an? 
Wenn Du am Sensorausgang einen Spannungsteiler verwendest, dann ist 
Deine Kennlinie nicht mehr linear.

Also müßte man per OVP den Sensorausgang hochohmig buffern und danach 
die Spannung teilen. Bei Deiner Schaltung mit Rv und Zenerdiode handest 
Du Dir ebenfalls ein Ungenauigkeit ein. Die Zenerdiode zieht schon weit 
vor der Zenerspannung Strom. Manche Datenblätter weisen dies auch aus.

Martin B. schrieb:
> Mit dem Poti wird die Spannung am
> Messpunkt auf 5V gestellt. Dadurch hätte ich zumindest einen Teil der
> Lupe.

Das Poti ist als Überspannungsschutz nützlich. Wenn der Sensor nur noch 
5,0 V bekommt, dann hast Du 0 - 5 V, bei 0 - 600 mm.
mfg Klaus

von Yalu X. (yalu) (Moderator)


Lesenswert?

Martin B. schrieb:
> Könnte man das so lösen wie auf dem Bild?

Wenn sich der interessierende Bereich im oberen Sechstel des Potis
(entspricht 500-600mm) befindet, hast du nichts gewonnen, weil dann am
"Messpunkt" 5V eingestellt werden müssen. Die Ausgangsspannung liegt
dann zwischen 4,17V und 5V.

Befindet sich der interessierende Bereich im unteren Sechstel (0-100m),
kannst du die Spannung am Messpunkt auf die vollen 12V hochdrehen. Die
Ausgangsspannung liegt dann zwischen 0V und 2V. Damit wird der
Messbereich des ADC (5V) zwar deutlich besser, aber immer noch nicht
vollständig genutzt.

Günstiger wären jeweils ein 8,33kΩ-Poti vom oberen Ende des Sensorpotis
nach +30V und vom unteren Ende nach -25V. Damit kannst du jeden 100mm
breiten Teilbereich auf 0-5V abbilden. Die beiden 8,33kΩ-Potis werden
dabei so eingestellt, dass sie in Summe 8,33kΩ ergeben. Der durch die
drei Potis fließende Strom beträgt dann 3mA. Der den 100mm entsprechende
Sensorpotiabschnitt hat 10kΩ·100mm/600mm=1,67kΩ, was zur gewünschten
Ausgangsspannung von 0V bis 5V führt.

Da die +30V und die -25V wahrscheinlich nicht zur Verfügung stehen, ist
eine eine aktive Lösung (bspw. mit einem INA326 und je einem Trimmpoti
für Verstärkung und Offset) praktikabler.


Philipp K. schrieb:
> ich glaube die die ich kenne haben ein anderes Messsystem.

Vermutlich haben die einen optischen Absolut-Encoder eingebaut. Der hat
eine bessere Linearität als Potis und praktisch keine Drift durch
Alterung. Verschleiß gibt es nur an den Lagern und den LEDs. Sind beide
ausreichend dimensioniert, hält so ein Encoder fast ewig.

von Martin B. (Firma: BINE Automatentechnik ◔) (pac-man)


Lesenswert?

Yalu X. schrieb:
> Die Ausgangsspannung liegt
> dann zwischen 4,17V und 5V.

Stimmt.

Yalu X. schrieb:
> Günstiger wären jeweils ein 8,33kΩ-Poti vom oberen Ende des Sensorpotis
> nach +30V und vom unteren Ende nach -25V. Damit kannst du jeden 100mm
> breiten Teilbereich auf 0-5V abbilden.

Vielen Dank für die ausführliche Erklärung.

Gruß

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.