PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Lage von Beschleunigungssensor



SilentLightning
09.11.2014, 15:59
Hallo,

ich arbeite zum ersten Mal mit einem Beschleunigungssensor, habe mir jetzt vorher ein paar Gedanken gemacht und hab mal ein paar Fragen dazu...
Ich hab eine 3R-Struktur á la Zentralhand gegeben und möchte einen Beschleunigungssensor anbringen, der mir die Beschleunigung und Position/Lage des TCP und der Achsen ausgibt. Meine Frage ist jetzt, reicht dafür ein einziger Beschleunigungssensor, um die Information für alle drei Achsen einzuholen oder brauche ich mehrere und ist die Lage des Beschleunigungssensors auf meiner Struktur von Relevanz? Also sprich, macht das einen Unterschied wo auf der Struktur ich den Sensor anbringe (z.B. am Endeffektor oder auf einen der Achsen) ?

Vielen Dank schonmal

Ritchie
19.12.2014, 11:34
Hi,

ich denke mal, das Du für jede Achse einen Sensor benötigst. Eine grafische Darstellung würde hier aber einiges klarer machen.
Gruss R.

Rabenauge
19.12.2014, 17:33
Wenn du nur die Lage ermitteln willst, ist die Position Wurst.
Übliche Acclerometer haben übrigens von Hause aus heutzutage die Fähigkeit, alle drei Raumachsen zu vermessen- insofern tut es _ein_ solcher Sensor.
Allerdings: mit nem reinen Beschleunigungsmesser kannst du lediglich ermitteln, wo "unten" ist- rechts oder links ist im Stillstand _nicht_ zu unterscheiden!
Wenn du die absolute Lage im dreidimensionalen Raum brauchst, musst du eine Richtungsreferenz haben- nen Kompass, zum Beispiel.

Valen
19.12.2014, 17:46
.... eine 3R-Struktur á la Zentralhand ... und Position/Lage des TCP ...3R-Struktur? Zentralhand? TCP? Was ist das?

Ritchie
19.12.2014, 17:50
Stimmt,
ich arbeite derzeit mit einem LSM303 und will hier meine Position im Raum mittels Magnetometer erfassen.
Er sprache ja von Lage/Position ich sah hier die Aussage "Sensor", als eine Erfassung einer Richtung (ein Beschleunigungswert).
Da die heutigen Chips alle X/Y/Z können, ist natürlich in diesem Fall nur ein Sensor notwendig.

3R-Struktur soll wohl 3D Struktur heissen. Tipfehler.

Gruss R.

Valen
19.12.2014, 18:04
Dann gibt es immer noch Zentralhand und TCP das ich nicht verstehe in diesen Kontext.

- - - Aktualisiert - - -

Ok, dann bleibt nur einer unbeantwortet: http://www.robini-hannover.de/robini_glossar/zentralhand.html

oberallgeier
19.12.2014, 18:35
Dann gibt es immer noch ... TCP das ich nicht verstehe in diesen Kontext ...Tool Center Point. Mal kurz - eher grob: Im Prinzip ein Punkt auf dem "letzten Glied" (das ist aber kein unabdingbares Muss, macht aber viel Sinn) - dem Fortsatz des äussersten Gelenks angenommener Punkt. Meist eben der tatsächliche Arbeitspunkt eines Werkzeugs, z.B. eines Bohrers. Manchmal ein etwas mühseliger Begriff, z.B. wenn da draussen VIELE Gelenke sind - wie eben die hier angesprochene Hand. Je nach Anzahl und Art der Freiheitsgrade des Grundgerätes sollte der TCP in entsprechend viel Dimensionen definiert sein (oder definierbar sein) - also bei nem stinknormalen Sechsachser X, Y, Z und die zugehörigen Raumwinkel. Wozu? Bei ner Bahnsteuerung z.B. wird von den Vorgaben nur der TCP bewegt und nach Möglichkeit berechnet das Gerät eher im Hintergrund die notwendigen Achsen- und Gelenkstellungen für diese TCP-Festlegung . . .

i_make_it
20.12.2014, 15:54
3R Struktur macht in Verbindung mit TCP schon Sinn.
3T Struktur ist ein Portal mit X,Y und Z-Achse T=translatorisch.
3R sind dann A,B und C-Achse und meint rotatorische Achsen.
Das sind die üblichen Begriffe bei CNC Maschinen und Industrierobotern.
Bei einem Industrieroboter ist der Greifer schon ein optionales Zusatzgerät. Der Hersteller weis ja nicht ob man eine Lackierpistole eine MIG/MAG Schweißpistole, eine Fräßspindel, einen Laser, einen Greifer oder sonst was anbauen will. Also wir als TCP in der Regel der Mittelpunkt der Stirnfläche des Montageflanschs bezeichnet. Einen Offset kann man dann für das jeweilige Anbaugerät per Parameter festlegen und die Steuerung berücksichtigt dann bei der Bahnberechnung diesen neuen TCP.

Mxt
21.12.2014, 09:58
Hm,

ich lese das gerade, während ich ein Demoboard mit einem Beschleunigungssensor auf dem Tisch liegen habe.

Wenn das Teil in Ruhe ist, liefert es sehr präzise den "Vektor nach unten", das ist kein Problem. Bei Bewegungen der Hand zuckt der Vektor in der Beschleunigungs- und Abbremsphase wild hin und her. Daraus zu berechnen, wie weit man sich bewegt hat, ist sicher im Prinzip möglich, aber mathematisch nicht trivial und vermutlich einigem Fehler behaftet.

Es gibt auch Beschleunigungssensoren, die zusätzlich die Richtung des Magnetfeldes als 3D Vektor ausgeben, aber normalerweise reagieren die auch auf die Anwesenheit von Elektromotoren. Deswegen bin ich nicht sicher, ob so eine Kombination hier wirklich von Nutzen wäre.

Aber durch geeignete Signalverarbeitung kann man sicher einiges an Information aus nur einem Sensor ziehen. Freescale wird sich schon was dabei gedacht haben, wenn sie einen Cortex-M4 zu dem Sensor auf das Board gesetzt haben.

Rabenauge
21.12.2014, 10:57
Magnetometer können tatsächlich auf "jeden Mist" reagieren-Elektromotoren, Kabel in der Nähe, Lautsprecher, PC-Monitore- sogar die Blechstreifen in nem Steckbrett.
Ich hab nen HMC5883l im Einsatz, damit er funktioniert, musste ich ihn so weit wie irgend möglich weg vom "Rest" (er werkelt im Monstertruck) einbauen, und zusätzlich "hard iron" kalibrieren. Allerdings: er ist keine 20cm von nem 540er Bürstenmotor weg, grösser ist das Auto einfach nicht. Damit erreiche ich dennoch Genauigkeiten von etwa 5-8 Grad, in meinem Fall ausreichend, da es drum geht, GPS-Punkte anzufahren.
Mit etwas mehr Aufwand düfts aber auch noch genauer gehn- ich brauch es nicht.
Eventuell bastele ich mir noch ne Neigungs-Kompensation dazu (ebenfalls mit nem MPU6050), mal gucken.
Sowas gibt es, wie schon geschrieben wurde, auch als komplettes Board heissen dann MPU 9050 oder ähnlich- bei der 6050 ist lediglich nen Beschleunigungsmesser und nen Gyroskop (beides dreiachsig) drauf.

Mxt
21.12.2014, 12:07
Ich experimentiere unter anderem mit dem MMA8450Q, allerdings in Form eines Demoboards (z.B. Conrad Nr. 630966-62). Der kann mit bis zu 1,5 kHz Abtastrate und bis zu 12 Bit Auflösung messen. Allerdings nicht gleichzeitig, aber 800 Hz mit voller Auflösung sind möglich. Es geht mir aber auch eher darum mit dem Laptop über USB Vibrationen zu messen. Das Board ist "mbed enabled" und kann daher über Webbrowser mit Internetverbindung in C++ programmiert werden.

Für mathematische Experimente und das Vorverarbeiten der Messwerte sehr nützlich. Für das Anbringen an einem Roboterarm ist es mit Scheckkartengröße wahrscheinlich zu groß. Aber so ähnlich wird man die Datenerfassung an einem ganzen Arm wohl angehen müssen, mehrere intelligente Sensorknoten senden vorverarbeitete Werte an einen übergeordneten Rechner, der daraus die Armposition berechnet.