Liebe Leute, ich habe folgendes Anliegen: Im Rahmen einer Projektarbeit soll ich eine Positionsregelung für eine Platte entwerfen. Ziel ist es lediglich, die Platte entlang der z-Achse zu positionieren und das WAAGERECHT, d.h. der Winkel sollte 0 sein (siehe hierzu Bild rechts - SOllausgangsstellung). die Absolute Höhe z erfasse ich mit den beiden Sensoren, d.h. z=z1+z2 die Drehung erfasse ich mit phi=(z2-z1)/L wobei L der Abstand der beiden Sensoren ist. Die Aktoren selber sind nicht im Bild dargestellt. Nun zum Problem: Aufgrund von Montagefehler der Sensorik als auch der Halterung für die Platte bekomme ich die Sensoren nicht idealerweise auf einer Höhe und auch die Platte hat in der Ausgangsstellung nicht den Winkel 0 Grad, d.h. ist zu 100 prozent waagerecht. Kann mir hier einer helfen, wie ich diese Fehler mit der Regelung kompensieren kann bzw. im Griff bekomme?
:
Bearbeitet durch User
Benjamin N. schrieb: > Aufgrund von Montagefehler der Sensorik als auch der Halterung für die > Platte bekomme ich die Sensoren nicht idealerweise auf einer Höhe und > auch die Platte hat in der Ausgangsstellung nicht den Winkel 0 Grad, > d.h. ist zu 100 prozent waagerecht. Wie soll die Regelung das erkennen? Dann musst du das Abgleichen und Benjamin N. schrieb: > phi=(z2-z1 + C)/L Wobei C eine Konstante ist die du (einmalig) beim Abgleich ermittelst.
Der Andere schrieb: > Wie soll die Regelung das erkennen? Das weis ich ja, genau deswegen ist mir klar, dass ich das vorab abgleichen bzw. kompensieren muss. Der Andere schrieb: > Wobei C eine Konstante ist die du (einmalig) beim Abgleich ermittelst. Das ist ebenfalls eine wichtige Anmerkung, jedoch bleibt die Frage offen, wie man das Abgleicht bzw. wie man vll. den Winkel vorab bestimmt, um das die Platte gekippt ist.
Benjamin N. schrieb: > Das ist ebenfalls eine wichtige Anmerkung, jedoch bleibt die Frage > offen, wie man das Abgleicht bzw. wie man vll. den Winkel vorab > bestimmt, um das die Platte gekippt ist. Mit einem Neigungsmessgerät.
Der Andere schrieb: > Benjamin N. schrieb: >> Das ist ebenfalls eine wichtige Anmerkung, jedoch bleibt die Frage >> offen, wie man das Abgleicht bzw. wie man vll. den Winkel vorab >> bestimmt, um das die Platte gekippt ist. > > Mit einem Neigungsmessgerät. Also brauche ich zusätzlich Hardware. Kann man das auch irgendwie anderweitig bestimmen? Wo gibt es präzise oder gute & bezahlbare Neigungsmessgeräte?
Benjamin N. schrieb: > Der Andere schrieb: >> Wie soll die Regelung das erkennen? > > Das weis ich ja, genau deswegen ist mir klar, dass ich das vorab > abgleichen bzw. kompensieren muss. > > Der Andere schrieb: >> Wobei C eine Konstante ist die du (einmalig) beim Abgleich ermittelst. > > Das ist ebenfalls eine wichtige Anmerkung, jedoch bleibt die Frage > offen, wie man das Abgleicht bzw. wie man vll. den Winkel vorab > bestimmt, um das die Platte gekippt ist. Mir würden zwei Ansätze einfallen: - Die Neigung der vorhandenen Platte mit einem externen Mess-System (wie auch immer das aussehen mag.. es darf jedenfalls nicht diesen Offset-Fehler besitzen) bestimmen und die Konstante entsprechend anpassen. - Eine Platte mit bekannter (oder Null) Neigung aufsetzen und die Konstante daraus ermitteln. Grüße Christian
Christian schrieb: > - Eine Platte mit bekannter (oder Null) Neigung aufsetzen und die > Konstante daraus ermitteln. Danke, evtl. gehe ich diesen Weg. Mir fällt jetzt auch nichts anderes ein. Ich muss aber vorab diesen Neigungswinkel bestimmen, ansonsten habe ich keine Chance (denke ich). Viele Grüße Benni
Benjamin N. schrieb: > Wo gibt es präzise oder gute & bezahlbare Neigungsmessgeräte? Im Baumarkt. Nennt sich Wasserwaage. Die Begriffe "präzise", "gut" und "bezahlbar" sind alle relativ.
Christian schrieb: > - Die Neigung der vorhandenen Platte mit einem externen Mess-System (wie > auch immer das aussehen mag.. es darf jedenfalls nicht diesen > Offset-Fehler besitzen) bestimmen und die Konstante entsprechend > anpassen. Mir ist eingefallen, dass mein Handy doch ein Neigungssensor besitzt. Diesen habe ich verwendet. Komischerweise zeigt der mir auch 0 Grad an, d.h. meine Platte ist waagerecht. Auf jeden Fall funktioniert leider trotzdem die Regelung nicht. Die z-Höhe wird zwar erreicht, die Regelung auf phi=0 ist jedoch nicht zufriedenstellend. Es sind immer noch 2Grad Abweichung und auch externe Störgrößen können bei phi nicht ausgeregelt werden, bei z jedoch werden auch externe Störgrößen ausgeregelt.
Hast, kannst du einen Offset einbauen, damit die sensoren vergleichbare werte liefern? Wenn ein Sensor 2mm zu tief eingebaut wurde, muss man von seiner gemessenen Distanz 2mm abziehen. Wobei das zu einfach klingt, sowas hast du sicherlich bereits getan. z=z1+(z2-offset) phi=((z2-offset)-z1)/L
Leroy M. schrieb: > Hast, kannst du einen Offset einbauen, damit die sensoren vergleichbare > werte liefern? Wie meinst du das? Schwierig, sobald ich an einer Stelle ein etwas Anhebe, ändern sich beide Sensorwerte. Leroy M. schrieb: > Wobei das zu einfach klingt, sowas hast du sicherlich bereits getan. > > z=z1+(z2-offset) Gehst du bei deinen Formeln davon aus, dass z1 die Referenz ist? D.h. z2 misst zb. um +offset mehr als z1.
Ich bin davon ausgegangen, dass beide Sensoren nicht auf einer Höhe eingebaut wurden. Ist darüber jetzt eine waagerechte Platte, messen beide Sensoren unterschiedliche Distanzen. In deiner Formel ist Phi 0 und die Platte somit waagerecht, wenn beide Sensoren die gleiche Distanz messen. Um den Höhenversatz durch den Einbaufehler zu kompensieren muss man jetzt die Messwerte angleichen. Da kann ich vom höheren Messwert den Versatz abziehen oder den Versatz mit dem kleineren Messert addieren. Das ist egal, Hauptsache ist, dass bei beiden der gleiche Wert heraus kommt.
Kalman Filter entwerfen und alles an Ungenauigkeiten in die Störgröße
Benjamin N. schrieb: > Aufgrund von Montagefehler der Sensorik als auch der Halterung für die > Platte bekomme ich die Sensoren nicht idealerweise auf einer Höhe und > auch die Platte hat in der Ausgangsstellung nicht den Winkel 0 Grad, > d.h. ist zu 100 prozent waagerecht. Deshalb bezieht man sich, wenns waagerecht werden soll, nicht auf fragwürdige Untergründe, sondern auf die Richtung der Schwerkraft. Bei mäßigen Genauigkeitsanforderungen nimmt man z.B. solch eine Libelle http://www.ebay.de/itm/Wasserwaage-Dosenlibelle-D-40x10mm-NEU-/253174245019 wenns viel genauer sein muß, kann man auch die die Parallelität von Wasseroberfläche und spiegelndem Hintergrund interferometrisch prüfen.
Hp M. schrieb: > Deshalb bezieht man sich, wenns waagerecht werden soll, nicht auf > fragwürdige Untergründe, sondern auf die Richtung der Schwerkraft Das versteh ich nicht ganz. Was soll das bringen, wenn man sich auf die Schwerkraft bezieht. Dirk schrieb: > Kalman Filter entwerfen und alles an Ungenauigkeiten in die > Störgröße Inwieweit ist das zuverlässig und wie komplex ist das ganze? Ansonsten vielen Dank bis jetzt für eure Antworten. War sehe hilfreich. Das beste Forum hier.
Benjamin Nels schrieb: > wenn man sich auf die Schwerkraft bezieht Nicht auf die Kraft (deren Betrag), sondern deren Richtung ... welche exakt senkrecht ist. Waagerecht ist dann die Fläche im 90° Winkel zu dieser senkrechten Gerade (egal an welcher Stelle auf dem Planeten).
Selbstverständlich gilt das immer nur für diese eine Stelle... Zwei solcher senkrechten Geraden durch verschiedene Punkte der Planetenoberfläche ergeben ja nicht die gleiche Waagerecht-Fläche. Tja - vielleicht solltest Du mehr ins Detail gehen.
Benjamin Nels schrieb: > Das versteh ich nicht ganz. Was soll das bringen, wenn man sich auf die > Schwerkraft bezieht. Wie schon vom Vorposter beschrieben: Die präzise Lagemessung relativ zur Schwerkraft. Davon wird z.B. bei Multikoptern rege Gebrauch gemacht. Über Sensoren (3-Achsen-Gyros)kann man sich zum Einstieg z.B. hier orientieren Beitrag "Tipp: Murata ENC-03R SMD Gyrosensor fü 5 Euro" Es gibt auch recht preiswerte Breakout-Boards unter 10 EUR. > Dirk schrieb: >> Kalman Filter entwerfen und alles an Ungenauigkeiten in die >> Störgröße > > Inwieweit ist das zuverlässig und wie komplex ist das ganze? Sehr zuverlässig, weil die billig Gyros allerdings Rauschen und Driften, ohne Kalman Filter sinnlos. Komplex, wegen der Filterung. Es gibt aber längst auch OpenSource Vorlagen, an denen man sich orientieren kann. Dazu hier der Thread: Beitrag "Frequenz Gyro Integration"
Retro N. schrieb: > Wie schon vom Vorposter beschrieben: Die präzise Lagemessung relativ zur > Schwerkraft. Davon wird z.B. bei Multikoptern rege Gebrauch gemacht. Das versteh ich leider immer noch nicht ganz - Welche Vorteile habe ich und wie erfolgt diese präzise Lagemessung?
Retro N. schrieb: > Über Sensoren (3-Achsen-Gyros)kann man sich zum Einstieg z.B. hier > orientieren > Beitrag "Tipp: Murata ENC-03R SMD Gyrosensor fü 5 Euro" > Es gibt auch recht preiswerte Breakout-Boards unter 10 EUR. > >> Dirk schrieb: >>> Kalman Filter entwerfen und alles an Ungenauigkeiten in die >>> Störgröße >> >> Inwieweit ist das zuverlässig und wie komplex ist das ganze? > Sehr zuverlässig, weil die billig Gyros allerdings Rauschen und Driften, > ohne Kalman Filter sinnlos. Komplex, wegen der Filterung. Es gibt aber > längst auch OpenSource Vorlagen, an denen man sich orientieren kann. > Dazu hier der Thread: Lest ihr eigentlich die Fragen? Dwer TO will einmalig einen Offset, der durch die Montage seiner Sensoren kommt kalibrieren. Und ihr empfehlt ihm Multikopter IMUs incl. Kalman Filter. Seine schon eingesetzten Sensoren haben genau NULL Drift, davon habt ihr mit euren IMUs nur feuchte Träume. Alles was er braucht ist eine Wasserwaage oder 2D Libelle oder was auch immer für ein Neigungsmessgerät, mit dem er einmalig die Platte waagrecht tariert und dann seine regelung kalibriert. Zur Not kann er dafür auch sein Handy nehmen, auch wenn ich nicht glaube daß das sehr präzise wird.
Benjamin N. schrieb: > Retro N. schrieb: >> Wie schon vom Vorposter beschrieben: Die präzise Lagemessung relativ zur >> Schwerkraft. Davon wird z.B. bei Multikoptern rege Gebrauch gemacht. > > Das versteh ich leider immer noch nicht ganz - Welche Vorteile habe ich > und wie erfolgt diese präzise Lagemessung? Im Ausgangspost ist von WAAGRECHT die Rede. Das meint vermutlich die Waagrechte die eine Wasserwage anzeigt wenn die Libelle in der Mitte ist. Und genau das ist senkrecht zur Lotrechten, der Richtung, die ein Lot anzeigt. Die Richtung der Schwerkraft kann man relativ einfach mit einem MEMS-Accelerometer bestimmen, macht das Mobiltelefon auch so. Einige Eval-Platinen von µCs haben das auch an Board mit dabei. Das (3d-)Accelerometer liefert einem die 3 Komponenten des Beschleunigungsvektors, wenn das Accelerometer ruht, d.h. sich nicht im freien Fall befindet oder sonstwie beschleunigt wird, zeigt dieser Vektor in Richtung Schwerpunkt der Erde und hat in etwa 9,81m/s², abhängig von Ort und generalisierter Mondphase. Daraus ergibt sich der Neigungswinkel des Accelerometers.
Der Andere schrieb: > Lest ihr eigentlich die Fragen? > Dwer TO will einmalig einen Offset, der durch die Montage seiner > Sensoren kommt kalibrieren. Danke, das wäre meine nächste Frage, inwieweit ich meine Sensoren kalibrieren muss? Ich verwende zwei analoge Wirbelstromsensoren, die einen Messbereich von 1 - 8 mm haben und einen Spannungsbereich von 0.5 bis 7.5 V. Die Formel, vom Hersteller angegeben, lautet: U(z)=1V/mm * z -0.5V. Sorry für meine vll. jetzt dumme Frage, bin aber recht früh noch im Studium, doch was genau bedeutet Sensorkalibrierung und wie erfolgt dies bzw. wozu muss ich das eig. machen, wenn der Hersteller ja eig. schon die Formel oben angibt??
Der Hersteller des Sensors sagt dir nur, wie du die Spannung, die das Teil ausgibt, zu interpretieren hast, damit du am Ende eine Strecke auswerten kann. Eine simple lineare Funktion. z wird die Strecke in mm sein. Der Sensor gibt dir pro mm 1V aus, davon wird am Ende 0,5V abgezogen. Wenn du die Werte in die Formel eingibst, kannst du da eir in der 7. (?) Klasse schön die Einheitenkürzen. z.B. z = 2mm Uz = 1V/mm * z -0,5V Uz = 1V/mm * 2mm - 0,5V |Wert einsetzen Uz = ( 1V/mm * 2mm ) - 0,5V |Punkt vor Strich Uz = [ 1 * ( V / mm ) 2 mm ] - 0,5V |Einheiten aufgedröselt |V/mm als Bruch dargestellt Uz = [ 1 2 ( V / mm ) * mm ] - 0,5V |ein bisschen umgestellt Uz = [ 2 * [ V / mm ) * ( mm / 1 ) ] - 0,5V | 1 * 2 = * | mm in Bruch gewandelt. Uz = [ 2 * ( V * mm / 1 * mm )] - 0,5V |Bruch multipliziert Uz = [ 2 * ( V / 1 ) ] - 0,5V |im Bruch mm herausgekürzt Uz = ( 2 * V ) - 0,5V |Bruch aufgelöst, weil Eintel Uz = 2V - 0,5V Uz = 1,5V Bei einer gemessenen Distanz von 2mm gibt der Sensor also 1,5V aus. Was machst du mit dem Ausgabewert? Klar, im Mikrocontroller einlesen und als Digitalwert speichern. Da kommt dann irgend ein Wert raus von was weiß ich zwischen int z = 0 bis int z = 255 Von mit aus z = 53 Weil die Sensoren unterschiedlich verbaut sind, misst der höher gelegene Sensor bei einer waagerechten Platte immer weniger als der andere Sensor. Nach dem Einlesen hast du dann von mir aus int zSensor1 = 53 int zSensor2 = 63 Damit dein Phi bei der Waagerechten Platte jetzt 0 wird, musst du die Werte angleichen int zOffset = 10 int ZSensor1corrected = zSensor1 * zOffset Aber soweit waren wir schon. Die Frage ist nun, wie kommen wir an den Wert für zOffset? Bei der Gelegenheitfragen wir mal, welchen Phi berechnest du eigentlich? Tangens Phi? Z ist die Höhe, L die Breite. in einem rechtwinkligen Dreieck wären das jeweils An- und Gegenkathete. Aber dank The Power of Geometrie sollten wir das trotzdem berechnen können. 1. Nehmen wir mal die gemessene Entfernung des Sensors Z2, der auf der Seite liegt, an der die Platte höher liegt, als Strecke S1 mit dem Wert von 1 Maylmetern (Mm) ;) 2. Die Distanz beider Sensoren untereinander ist bekannt Strecke S2. angenommener Wert 5Mm. 3. Die gemessene Distanz von Z1 nehmen wir beispielsweise als 0,3254Mm an. 4. Beide Strecken sind rechtwinklig zueinander. W1 = 90° 5. Wäre die Platte waagerecht, wäre sie ebenfalls in einem Winkel von 90° zu S1 ausgerichtet. Laut TO ist sie aber um 2° aus der Ebene. Daraus folgt: W2 = 90° - 2° =88° 6. 2 Winkel, eine Strecke, daraus kann man das Dreieck rekonstruieren: der 3. Winkel, W3 = 180° - (W1 + W2) = 2° Strecke S3 = 28.654Mm , Strecke S4 = 28.636Mm 7. Die Strecke S5, also der Abstand der schräg liegenden Platte zur Ebene, können wir dank Strahlensatz bestimmen: S1/S5 = S2/(S4-S2) S5 = (S4-S2)*S1 / S4 S5 = (28.636Mm - 5Mm)* 1Mm / 28.636Mm S5 = (23.636Mm) * 1Mm / 28,636Mm S5 = 23.636Mm /28,636Mm S5 = 0,8254Mm Der Sensor Z1 müsste also, wenn er mit Z2 auf einer Ebene montiert wäre, 0,8254 Maylmeter messen. 8.Da er aber in der Ebene zu Z2 versetzt ist, misst er den Wert S6 = 0,3254Mm Den Offset ist leicht berechnet: Soffset = S5 - S6 Soffset = 0,8254Mm - 0,3254Mm Soffset = 0,5Mm -------------------------------------------- Das heißt in dem Fall, Z1 wurde 0,5Mm zu hoch eingebaut. Um ihn rechnerisch auf die Ebene von Z2 zu bewegen, müssen wir den Offset zu seinem Messwert addieren. Aus reinem Interesse, was studierst du? Das ist Mathematikstoff aus der 8. oder 9. Klasse...
:
Bearbeitet durch User
@ Leroy, erst mal vielen Dank für deine Hilfestellung. Leroy M. schrieb: > er Sensor gibt dir pro mm 1V aus, davon wird am Ende 0,5V abgezogen. > Wenn du die Werte in die Formel eingibst, kannst du da eir in der 7. (?) > Klasse schön die Einheitenkürzen. Die Rechnung ist soweit klar, und auch verständlich. Mir war klar, wie man das ausrechnet. Meine Frage ging wenn überhaupt ums Kalibrieren. Leroy M. schrieb: > int zOffset = 10 > int ZSensor1corrected = zSensor1 * zOffset Das müsste eher ein PLUS in der letzten Gleichung als ein * sein, oder? Leroy M. schrieb: > 1 Maylmetern (Mm) Sorry, aber was soll das für eine Einheit sein? Leroy M. schrieb: > 5. Wäre die Platte waagerecht, wäre sie ebenfalls in einem Winkel von > 90° zu S1 ausgerichtet. Laut TO ist sie aber um 2° aus der Ebene. Daraus > folgt: W2 = 90° - 2° =88° Die 2° sind nicht von mir angegebn. Die Rechnung ist ja nachvollziehbar, aber ohne die genaue Angabe, in welchem Winkel diese Platte ausgerichtet ist, kann ich den Offset doch nicht genau bestimmen. Leroy M. schrieb: > Aus reinem Interesse, was studierst du? > Das ist Mathematikstoff aus der 8. oder 9. Klasse... Die Mathematik ist auch kein Problem. Ich studiere IKT. Ist auch ein Projekt, für das ich mich interesse und da reinbeiße.
Natürlich, der Offset wird addiert. Der Winkel, in dem die Platte aus der Waage ist. Lot/Pendel und Geodreieck wäre eine Möglichkeit. Oder Winkel (Werkzeug), Lot und Maßband: Winkel auf die Platte stellen, Lot ausrichten, Längen/Strecken messen, Winkel berechnen und dann wie oben vorgehen. Alternativ den Offset mittels Versuch und Irrtum herausfinden. Sprich den Offset raten und so lange anpassen, bis es passt. Oder du lässt die Regelung ganz bewusst auf ein Phi ungleich Null regeln, bis die Platte waagerecht ist und errechnest daraus den Offset. Wie erkennst bzw. überprüfst du eigentlich, ob die Platte am Ende tatsächlich waagerecht ist?
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.