# Messwertskalierung



## smartie (2 November 2007)

Hallo zusammen,

ich habe hier gerade einen Lichtlaufzeitsensor im Einsatz, der eine Reichweite von 10 m hat.
Damit will ich eine Distanz von 4 m messen.

Bei einigen Probemessungen habe ich eine Abweichung von bis zu 30 mm von der tatsächlich gemessenen Distanz festgestellt.

Nach einem Versuch habe ich festgestellt das die Abweichung im Durchschnitt 8 mm beträgt, bei der größten Abweichung beträgt die Differenz
zur tatsächlichen Distanz 29 mm im positiven und 24 mm im negativen Messbereich.

Mein Problem besteht nun darin das ich einen Antrieb auf einen Position +/- 5 mm genau positionieren muss, was der Antrieb natürlich auch kann.
Jedoch will der Sensor da nicht mitspielen.

Wie würdet ihr den Messwert in der SPS angleichen?
Das Problem dabei ist das der Wert im positven sowie im negativen Messbereich schwankt und die Differenz zum Sollwert auch je nach Messbreich stark variiert.

So gibt der Sensor zum Beispiel bei einer Distanz von 1900 mm einen Wert von 1901 mm aus, bei 1200 mm ist das Messergebniss jedoch 1229 mm.
Aber bei gemessenen 3500 mm beträgt das Messergebniss jedoch 3497 mm.

Ich hoffe Ihr versteht worauf ich hinaus will.

Mir würde da jetzt nur einfallen:

Gemessener Wert = x
(Durch Messreihe ermittelter) Tatsächlichert Wert = y

Wenn gemessener Wert = x dann setze dafür Wert y ein.

Aber das wäre ja ein enormer Schreibaufwand da ich jeden Wert an einem Vergleicher einsetzen muss, gibt es da evtl. eine bessere Variante?

Gruß smartie


----------



## marlob (2 November 2007)

Bleibt die Abweichung denn immer gleich. Ich meine wenn du ein paar mal z.B. die Entfernung 1200 mm misst, dann ein paar Mal eine andere Entfernung und dann wieder 1200 mm bleibt die Abweichung immer 29 mm. Dann kannst du eine Tabelle nehmen.

Besser wäre natürlich ein besserer Sensor


----------



## smartie (2 November 2007)

Hi marlob,

natürlich wäre ein besserer Sensor die bessere Alternative, aber so ein Sensor kostet ja ein Vermögen und wer kann sich das denn schon leisten .

Kurz um mein Vorgesetzter will dafür kein Geld locker machen. 

Bei einer Wiederholung des Messwerts erhalte ich den gleichen Wert, also scheint die Tabelle die richtige Lösung zu sein.

Nur wie könnte ich das realisieren ?

Gruß smartie


----------



## Larry Laffer (2 November 2007)

Hallo,
ich hatte so etwas ähnliches mal in Verbindung mit einer Kran-Positionierung. Hier ging es zwar um einen größeren Fahrweg, jedoch war eine Genauigkeit im Bereich +/- 5 mm durchaus machbar gewesen.
Als Hinweis hier vielleicht folgendes :
Beim Verfahren schwankte der Tastpunkt am Ziel um durchaus 2 Grad (bei einem Fahrweg von 100 m konnte dadurch die Seiten-Höhen-Auslenkung durchaus 3 - 4 m betragen). Entsprechend mussten die Reflektoren plaziert werden. Vielleicht ist das bei deiner Aufgabe auch schon der Problem-Punkt ...


----------



## marlob (2 November 2007)

smartie schrieb:


> natürlich wäre ein besserer Sensor die bessere Alternative, aber so ein Sensor kostet ja ein Vermögen und wer kann sich das denn schon leisten .


Die Frage ist doch was so ein Sensor kostet. Wenn du z.B. 2 Tage beschäftigt bist, alle Messpunkte aufzunehmen und dann noch 1 Tag zum programmieren und testen.
Dann kostet das schon mal 24 h x deinen Stundensatz. Dann rechen mal aus was billiger ist. Ich habe aber keine Ahnung was so ein Sensor kostet.




smartie schrieb:


> Kurz um mein Vorgesetzter will dafür kein Geld locker machen.


Wenn Sensor billiger als deine Stunden -> Vorgesetzten wegen Ahnungslosigkeit kündigen und Posten selber besetzen


----------



## smartie (2 November 2007)

Hi Larry,

danke für deine Antwort, aber das ist glaube ich nicht ganz mein Problem.

Ich habe einen Lichtlaufzeitsensor, der in 4 m Höhe befestigt ist und von dort aus die Distanz zum Produkt misst.
Dadurch errechne ich dann die Produkthöhe und fahre mit dem Antrieb in die entsprechende Position.

Gruß smartie


----------



## marlob (2 November 2007)

smartie schrieb:


> Ich habe einen Lichtlaufzeitsensor, der in 4 m Höhe befestigt ist und von dort aus die Distanz zum Produkt misst.
> Dadurch errechne ich dann die Produkthöhe und fahre mit dem Antrieb in die entsprechende Position.
> 
> Gruß smartie


Kannst du nicht an der Seite deines Antriebes 2 Lichttaster anbringen, die neben dem Produkt herfahren.
Wenn 1. Lichttaster Produkt erreicht, langsamer fahren und beim 2. Lichttaster STOP.
So ein Lichttaster ist auch nicht so teuer. Ich habe solche Lösungen schon öfter gesehen


----------



## Larry Laffer (2 November 2007)

smartie schrieb:


> Ich habe einen Lichtlaufzeitsensor, der in 4 m Höhe befestigt ist und von dort aus die Distanz zum Produkt misst.
> Dadurch errechne ich dann die Produkthöhe und fahre mit dem Antrieb in die entsprechende Position.


 
... in dem Fall würde ich tatsächlich den Vorschlag von marlob aufgreifen. Deine Variante ist dann ja noch zusätzlich vom Reflektionsvermögen des Untergrunds (Stapels ?) abhängig.
Gemäß marlob's Vorschlag könntest du dann beim Erreichen der langsam-Position deiner Ist-Position als Höhenwert einlesen (ich nehme an, du fährst über eine Servo-Achse - hatte ich aus der Beschreibung so heraus-interpretiert).


----------



## smartie (2 November 2007)

Den Gedanken hatte ich auch schon:

Prinzipiell könnte man mit dem Lichtlaufzeitsensor eine grobe Vorpositionierung durchführen und 10 cm vor der gemessenen Position
in den Schleichgang schalten und über einen Lichttaster fein positionieren.

Aber davon ist man hier nicht unbedingt begeistert, zumal es sein kann das die Höhenmessung eine Station vorher erfolgt.

Einen anderen Sensor der genauer (bzw. vielmehr RICHTIG) misst gibt es von diesem Hersteller nicht.

Also suche ich kurzum nach einer Lösung den Messwert anzugleichen, habt ihr vielleicht einen Vorschlag das zu realisieren,
mir würde wie gesagt nur einfallen  mit mehreren Vergleichern zu arbeiten.

smartie


----------



## Larry Laffer (2 November 2007)

? ... was ist das denn eigentlich, dass da rauf und runter fährt ?
Vielleicht hilft das ja für neue Ideen ...
Die Sache mit der Tabelle gefällt mir persönlich nicht - ist aber bestimmt machbar ...


----------



## smartie (2 November 2007)

Das was da "rauf und runterfährt" ist eine Höhenverfahrung in der ein Etikettierer sitzt, welcher dann in ein vom Kunden vorgegebenes "Fenster" hineinetikettiert.

Wie schon erwähnt wird der Lichtlaufzeitsensor zur Höhenmessung verwendet, der Antrieb selber wird über einen Inkrementalgeber positioniert.
Eine bessere Lösung als ein funktionierender Sensor fällt mir nicht ein.

Aber wie könnte die Korrektur denn mit der "Tabelle" aussehen?
Hab da grad gar keinen Lösungsansatz.

Gruß smartie


----------



## Larry Laffer (2 November 2007)

... weißt du denn vorher, wo du hinwillst (-sollst) ?
Wenn ja, wofür dann noch den Taster ... zur Kontrolle ?


----------



## Kai (2 November 2007)

smartie schrieb:


> Aber wie könnte die Korrektur denn mit der "Tabelle" aussehen?
> Hab da grad gar keinen Lösungsansatz.


 
Etwas ähnliches hatten wir hier schon einmal:

http://www.sps-forum.de/showpost.php?p=95400&postcount=23

http://www.sps-forum.de/showthread.php?t=15099

Gruß Kai


----------



## marlob (2 November 2007)

smartie schrieb:


> Aber wie könnte die Korrektur denn mit der "Tabelle" aussehen?
> Hab da grad gar keinen Lösungsansatz.
> 
> Gruß smartie


Tabelle könnte schwierig werden. Denn ich wüsste nicht wie man es lösen sollte wenn 2 verschiedene Abstände aufgrund der Abweichung den selben Wert ergeben.
Also z.B.
2000 mm -> 2029 mm
2020 mm -> 2029 mm

oder kannst du sicherstellen, das für alle 4000 Werte (ich nehme mal an, das für eine Höhe von 4 m jeder mm einen Wert gibt) unterschiedliche Messwerte rauskommen



			
				smartie schrieb:
			
		

> Einen anderen Sensor der genauer (bzw. vielmehr RICHTIG) misst gibt es von diesem Hersteller nicht.


Einen anderen Hersteller suchen


----------



## Werner54 (2 November 2007)

*Korrelierte Datentabellen*

Hallo smartie,

auch dafür gibt es was (halb)fertiges: 

FC103 aus Standard Library, TI-S7-CVonverting Blocks.
Allerdings müssen 2 Datenbausteine angelegt werden, einmal mit den Eingangswerten, einmal mit den Ausgangswerten.
Das wäre aber nur eine ziemliche Fleißarbeit, nichts kompliziertes.


----------



## smartie (2 November 2007)

Hi Werner54,

ich denke der FC103 könnte mich da schon weiter bringen.

Wenn ich die Funktion richtig verstehe muss ich zwei DB´s anlegen. Wird die Funkion aufgerufen so wird der erste DB
nach dem entsprechenden Wert durchsucht und am Ausgang der FC der entsprechende Wert laut dem zweiten DB ausgegeben.

Das bedeutet das ich für meine 4 m 4000 Tabelleneinträge anlegen muss und entsprechend mit vorher gemessenen Werten füttern muss.

Wie marlob schon angemerkt hat kann ich nicht sicherstellen das ich für zwei unterschiedliche reele Distanzen den gleichen Wert vom Sensor bekomme.
Vielmehr ist es sogar so das ich bei meiner durchgeführten Messreihe zwei mal den gleichen Wert vom Sensor erhalten habe,
jedoch die tatsächlich gemessene Distanz 10 mm betrug.

Die FC103 würde in diesem Fall ja den ersten gefundenen Wert einsetzen, oder?
Das wäre dann eine Abweichung von 10 mm.

Was nun?

Gruß smartie


----------



## zotos (2 November 2007)

Kuhscheiße kann man nicht polieren!

Kein Sensor ist perfekt und Kalibrieren, Skalieren, Linearisieren, usw. ist ja alles normal. Aber das was Du hier schreibst kannst Du nicht via Software gerade biegen. Wenn Du für zwei deutlich unterscheidbare reale Werte zwei mal den gleichen Messwert erhältst bekommst, sitzt Du in der Klemme.

Ich würde mich um den Sensor kümmern. Kann man den Sensor einstellen (Fokusieren). Hast Du den Hersteller des Sensor mal gefragt?

Was auch oft hilft ist einen Vertreter von einer Firma kommen zu lassen mit Mustern wenn da einer sofort geht ist der Chef meist auch schnell überzeugt die Notbremse zu ziehen und das Geld für einen anderen Sensor auszugeben.


----------



## andre (2 November 2007)

marlob schrieb:


> Kannst du nicht an der Seite deines Antriebes 2 Lichttaster anbringen, die neben dem Produkt herfahren.
> Wenn 1. Lichttaster Produkt erreicht, langsamer fahren und beim 2. Lichttaster STOP.
> So ein Lichttaster ist auch nicht so teuer. Ich habe solche Lösungen schon öfter gesehen


Das erinnert mich irgendwie an eine Autowaschanlage. Wird da nicht auch mit Lichtschranken die Kontur vom Fahrzeug abgetastet?

Gruss Andre


----------



## marlob (2 November 2007)

smartie schrieb:


> Vielmehr ist es sogar so das ich bei meiner durchgeführten Messreihe zwei mal den gleichen Wert vom Sensor erhalten habe,
> jedoch die tatsächlich gemessene Distanz 10 mm betrug.


Ich meine du solltest deine Tabelle mal schnell vergessen. 
Das ist eh nur Pfusch!
Besorg dir einen vernünftigen Sensor oder mache es mit 2 Lichttastern.
Du kannst auch einen Lichtaster nehmen. Wenn der erreicht ist, hast du das obere Ende des Produkts erreicht. Danach musst du noch x mm bis zum Etikett fahren. Das kannst du dann mit dem Inkrementalgeber messen.


----------



## kiestumpe (2 November 2007)

smartie schrieb:


> Das was da "rauf und runterfährt" ist eine Höhenverfahrung in der ein Etikettierer sitzt, welcher dann in ein vom Kunden vorgegebenes "Fenster" hineinetikettiert.
> 
> Wie schon erwähnt wird der Lichtlaufzeitsensor zur Höhenmessung verwendet, der Antrieb selber wird über einen Inkrementalgeber positioniert.
> Eine bessere Lösung als ein funktionierender Sensor fällt mir nicht ein.



??? Warum nutzt du nicht den Inkrementalgeber. Am Anfang eine Referenzfahrt, meinetwegen mit deinem anderen Sensor, der aber auf diesen Punkt exakt genau kalibriert ist und den Rest inkremental 

Was ich auch noch nicht so richtig verstanden habe, ist der Messfehler an einem Ort X stets konstant, oder schwankt er dort um +/-30mm?


----------



## PCE-5Smp (2 November 2007)

*Warum nicht Ultraschall?*

Bei geringen Distanzen ergibt eine Ultraschallmessung nach meiner Erfahrung bessere Ergebnisse und sind auch nur halb so teuer. 

Ich glaube du hast die nachfolgende Frage schon beantwortet, ich stell sie trotzdem nochmal:

Was erhälst du für Werte wenn du eine Messung bei gleichbleibender Höhe mehrmals wiederholst? Der Sensor ist zwar getaktet, misst also sicherlich kontinuierlich den Abstand zum Messobjekt... was passiert aber wenn du die Speisespannung ab- und wieder zuschaltest? Dann solltest du für die gleiche Entfernung unterschiedliche Werte erhalten. Wenn du diese dann mittelst verringert sich die Fehlerdiff.


----------



## marlob (2 November 2007)

kiestumpe schrieb:


> Was ich auch noch nicht so richtig verstanden habe, ist der Messfehler an einem Ort X stets konstant, oder schwankt er dort um +/-30mm?


Lesen bildet! 
siehe Beitrag 2 und 3 dieses Threads


----------



## smartie (3 November 2007)

zotos schrieb:


> Kuhscheiße kann man nicht polieren!


 



zotos schrieb:


> Hast Du den Hersteller des Sensor mal gefragt?
> 
> Was auch oft hilft ist einen Vertreter von einer Firma kommen zu lassen mit Mustern wenn da einer sofort geht ist der Chef meist auch schnell überzeugt die Notbremse zu ziehen und das Geld für einen anderen Sensor auszugeben.



So klug war ich auch schon. Zunächst habe ich es beim Support probiert der konnte mir auch nur raten die Messrate umzustellen.
Nach einigen versuchen (Konnte mir zunächst nicht vorstellen das man den Sensor nicht genauer einstellen kann) habe ich dann
mit dem Vertreter telefoniert der uns das Ding (mit einer Genauigkeit von 5 bis 8 mm verkauft hat) aber der hat mir auch nicht helfen können.

Problem ist das wenglor keinen anderen Sensor im Programm hat der genauer misst, aber wenn das so ist dann sollte man sich bei denen
mal wirklich ernsthaft Gedanken darüber machen.

Was noch dazu kommt ist das jeder ausgelieferte Sensor eine andere Kurve hat, das heisst das im Falle eines Defekts die ganze Korrektur
in der SPS unter Umständen neu gemacht werden muss.

Werde mich heute mal nach einem neuen Sensor umsehen.

Was setzt ihr denn für sowas ein?

@ kiestumpe : Der Sensor dient zur Höhenmessung eines Produkts, nicht zur Positionierung des Antriebs dazu verwende ich natürlich den Inkrementalgeber.

Gruß smartie


----------



## ge_org (3 November 2007)

SICK,
haben eigentlich für alles immer irgendwas das passt.

Georg


----------



## Larry Laffer (3 November 2007)

smartie schrieb:


> Der Sensor dient zur Höhenmessung eines Produkts, nicht zur Positionierung des Antriebs dazu verwende ich natürlich den Inkrementalgeber.


 
... ich muss noch einmal fragen ...
Warum nimmst du nicht den Lichttaster zur Grobmessung und liesst bei Erreichen der Kontur deines Produkts die Ist-Position (deines Inkr.Gebers) ein.
Oder ... du checkst mal, ob die Messung des LT's genauer wird, wenn du näher dran bist. Dann könntest du in mehreren Schritten positionieren - was man von aussen nicht sehen würde, da es ja ein kontinuierlicher Ablauf werden würde.

Ein anderer Hersteller bringt dich m.E. da auch nicht weiter - die kochen auch nur mit Wasser. Wenn dann ein anderes Prinzip. Ulraschall würde ich nicht als Alternative ansehen ...

Gruß
LL


----------



## smartie (3 November 2007)

Hallo Larry,

ich versteh gerade nicht ganz wie du das meinst. 

Der Lichtlaufzeitsensor ist in 4 m Höhe fix befestigt und schaut auf eine Rollenbahn, auf der das Produkt transportiert wird.

Die damit gemessene Produkthöhe wird (umgerechnet) an den Antrieb übergeben und dieser positoniert dann mittels Inkrementalgeber entsprechend.

Gruß smartie


----------



## Larry Laffer (3 November 2007)

... endschuldigung ...
ich hatte einen Moment angenommen, dass er mit deinem Aggregat mitgefahren wäre - wie ich darauf gekommen bin weiss ich aber auch nicht - wäre aber vielleicht noch eine Möglichkeit ...


----------



## smartie (3 November 2007)

Kann sein das ich mich vielleicht etwas unklar ausgedrückt habe. 

Klar wäre das auch eine Lösung, aber dann könnte ich auch wie ebenfalls bereits vorgeschlagen über den Sensor vorpositionieren
und mit einem Reflextaster der seitlich auf das Produkt schaut fein positionieren.

Aber ich suche ja eigentlich auch nach einer Standardlösung die ich immer wieder anwenden kann, so kann es zum Beispiel auch
vorkommen das ich mit dem Antrieb bereits vorpositionieren muss und dann auf das Produkt warten muss.

Gruß smartie


----------



## Larry Laffer (3 November 2007)

... das ist für mich allerdings kein Widerspruch ...
Endscheidend ist ja wohl, dass du mit der aktuellen Hardware nicht so richtig auf den Punkt kommst (im wahrsten Sinne des Wortes ...). Es gilt also, eine Möglichkeit zu finden wie es dennoch geht. Vielleicht solltest du auch berücksichtigen (vielleicht wurde das schon erwähnt), dass ein optisches Messverfahren immer auch von der Struktur und der Farbe des Messpunktes beeinflusst wird. Auch daher könnten deine Mess-Ungenauigkeiten kommen. 

Wie ich zu einem früherem Zeitpunkt schon geschrieben habe fand ich den Vorschlag von marlob noch am Besten - vielleicht wäre das auch mein Vorschlag gewesen ...

Ich muss auch noch erwähnen, dass ich selber auch das ein und das andere Mal mit Messungen der verschiedensten Art herumspiele. Am Genauesten wird es immer inkrementell - alles andere ist Damelei ...

Gruß
LL


----------



## smartie (3 November 2007)

Welchen Vorschlag meinst du?

Den mit den zwei Lichttastern, oder den mit dem anderen Hersteller?

Also ich denke ich werden Montag zunächst mal bei anderen Herstellern anfragen, habe mir da schon mal was von Leuze und Sick rausgesucht.

Mal sehen was die da versprechen. Und wenn das nix wird dann werde ich mir mal Gedanken über einen anderen Lösungsansatz machen.

Aber wenn ich den Ansatz von marlob (den mit den zwei Sensoren) verfolgen würde dann bräuchte ich nicht den SEW Umrichter mit Feldbuspositionierung, ein normaler FU Täte es dann auch.

smartie


----------



## Larry Laffer (3 November 2007)

Ich meinte den Vorschlag mit den 2 LT's von der Seite ...

Mit den genannten würde ich die Position der Oberkante des Produkt's (Stapel) so genau es geht ermitteln und von da an meine Absolut-Positionierung vornehmen.

Ggf. geht vielleicht auch noch folgendes :
Manche Servo's haben einen Trigger-Eingang, der so zu parametrieren ist, dass er mit steigender Flanke die Istposition in einen Zwischenspeicher einliesst, den man seperat abfragen kann. Hier könntest du dann auch mit einem LT arbeiten und den zum Triggern nehmen. Von der eingelesenen Position aus könntest du dann weiter positionieren ... nur so als Vorschlag ...

Die Idee mit einem anderen Hersteller ist m.E. nicht zielführend - hatte ich aber schon geschrieben ...

Gruß
LL


----------



## andre (3 November 2007)

Hallo,
wie du schon geschriebeben hast, misst du aus 4m Höhe. In welchen Grössen sind denn die Paletten zu erwarten, d.h. wie wäre die weiteste Entfernung zum Sensor und wie die kürzeste? Wie schnell bewegen sich die Paletten?

Gruss Andre


----------



## kiestumpe (4 November 2007)

Hallo Andre,

Vielleicht wäre es hilfreich, wenn du uns mal ne Skizze der Anordnung hier rein stellst, dass wir uns ein besseres Bild machen können und vielleicht noch ein paar Ideen erörtern.


----------



## smartie (8 November 2007)

Hallo zusammen,

ich wollte mich grad nochmal melden um euch den letzten Stand der Dinge mitzuteilen:

Nachdem wir eine Messreihe zur Ermittlung der Abweichung durchgeführt haben und ich,
Dank eurer Hilfe auch schon einen halbwegs passablen Lösungsansatz hatte,
konnte ich meinen Vorgsetzten davon überzeugen sich mal nach Alternativen umzusehen. 

Und nach ein paar kurzen Telefonaten hatten wir dann auch schon bei leuze einen entsprechenden
Sensor gefunden und uns zum Testen bestellt.

Gestern ist er gekommen und wir haben ihn direkt angeschlossen und  ausprobiert.

Und siehe da : 1a
Maximale Abweichung  : 2 mm auf den von uns benötigten 4 m.

Und dabei kostet der Sensor gerade mal 400 Euro mehr.  

Im Anhang hab ich euch mal die beiden Diagramme unserer Messreihe beigefügt.

Vielen Dank allen Beteiligten noch mal für Ihre Hilfe.

Gruß smartie


----------

