hallo,
ich habe einen Raum, de max 5x6 Meter groß ist. So jetzt muss ich von
mehreren Kugeln die relative oder absolute Position bestimmen in
3d(x,y,z) und das ganze möglichst im Milimeterbereich. Wie könnte man
sowas am besten umsetzen? Achja es können Personen oder Gegenstände im
raum stehen, somit würde Ultraschall nich in Frage kommen, da es dann
abgeschwächt wird, wenn man 4 Sensoren in jeder Ecke hat ...
MfG
das kann egal sein, das können ja Sensoren sein ;)
Also die wichigste Bedienung ist, dass man auf millimeter genau die
Position bestimmen kann, von mehreren Kugeln. Woras die Kugeln sind, ist
egal.
MfG
Ich nehme mal an deine Kugeln sind fiktive Objekte aus Luft, die von der
Umgebung nicht zu unterscheiden sind....
Soviel zu "Woraus die Kugeln sind, ist egal!"
z.B. über Triangulation:
An jeder Kugel eine LED, welcher mit einer bestimmten Frequenz
angesteuert wird. dann an 3 Punkten das Licht empfangen und so über die
Laufwege die Position errechnen.
Durch die verschiedenen Frequenzen kannst du rückschließen, von welcher
LED das Licht kommt.
Oder einfacher:
Jede LED nur zu bestimmten Zeiten einschalten, sodass zu keinem
Zeitpunkt mehrere Leuchten und du immer nur ein Signal empfängst. Durch
eine entsprechend kurze Pulsdauer kannst du so auch in kurzen Zeiten
Positionsänderungen erkennen
Hallo,
hätte eine Kamera an der Decke in der Mitte des Raumes immer freie Sicht
auf deine Kugeln? Bei 6 Meter Länge und einer Kameraauflösung von z.B.
1024 Pixel in einer Richtung kämest du auf eine Messgenauigkeit von ca 6
mm.
Wenn die Kugeln jetzt noch aus durchscheinendem Material bestehen und
sich blinkende IR-LEDs im Inneren befinden, sollte das machbar sein ...
Noch eine andere Idee: Wenn du etwas am Fußboden (oder wenigstens unterm
Teppich) machen darfst (Kabelschleifen verlegen, ählich einer
Fußbodenheizung), dann geht da auch was! Mach dich mal vertraut damit,
wie ein Grafik-Tablett funktioniert ... damit erreicht man durch
Interpolation Messauflösungen, die bis zum hundertfachen feiner sind,
als die Abstände der Leiterschleifen.
Frank
> ... dann an 3 Punkten das Licht empfangen und so über die> Laufwege die Position errechnen.
Das kann'ste vergessen. Bei den par Metern ergeben sich Laufzeiten im
Pico-Sekunden-Bereich. Mit LEDs und bezahlbaren Empfängern ist das
völlig aussichtslos ...
Frank
also ich hab mit einem meiner lehrer gerade so ein projekt laufen, wir
benutzen tischtennisbälle die innen von einer 1W-IR led beleuchtet
werden (gibts bei farnell um ca 10€), strahlen fast 360 grad ab.
als empfänger benutzen wir ein array aus nintendo wiimotes. jede trackt
bis zu 4 der bälle, zur zeit haben wir nur 5 wiimotes von denen wir die
daten sammeln, das system lässt sich aber beliebig erweitern,
theoretisch auch beliebig genau wenn man den wiimotes eine andere
objektivlinse einbaut
die 4 bälle sind bei uns die ecken eines tetraeders der an einer kamera
befestigt wird und somit wird ihre position in der greenbox erfasst.
die sensoren die in der wiimote verbaut sind gibts auch einzeln, haben
eine serielle schnittstelle und geben bis zu 200 samples / sekunde her.
die verzögerung haben wir noch nicht gemessen aber die dürfte sehr
gering sein.
gibt auch schon einiges dazu im internet, mit den wiimotes lässt sich
viel basteln, ich denke zb auch an einen 3d scanner: der zu erfassende
gegenstand wird zb mit einem laserpointer "abgeleuchtet", die wiimotes
zeichnen die position des punktes auf. hat sicher auch schon jemand so
oder ähnlich gebaut :-)
>Achja es können Personen oder Gegenstände im>raum stehen, somit würde Ultraschall nich in Frage kommen
Und warum? Dem Ultraschall ist dies Egal. Es wird immer das erste
(direkte) Signal ausgewertet, egal ab eine Refexion (Gegenstand oder
Person) ein stärkeres Signal liefert. Du hörst ja auch Musik, obwohl
eine Person oder Gegenstände im Zimmer sind...
Hier nochmal, was ich schon in einem anderen Beitrag beschrieben habe:
Beitrag "Controller Synchronisation über FBAS-Signal"
Beitrag "Synchronisation über Funk"
Folgende Lösung wurde realisiert:
Im Raum wurden 4 Ultraschall-Sender installiert (in jeder Ecke einer).
Diese sind über eine Leitung synchronisiert.
Sender 1 (X1/Y1/Z1):
Sendet alle 02, 12, 22, 32, 42 und 52 Sekunden jeder Minute einen
Impuls.
Sender 2 (X2/Y2/Z2):
Sendet alle 04, 14, 24, 34, 44 und 54 Sekunden jeder Minute einen
Impuls.
Sender 3 (X3/Y3/Z3):
Sendet alle 06, 16, 26, 36, 46 und 56 Sekunden jeder Minute einen
Impuls.
Sender 4 (X4/Y4/Z4):
Sendet alle 08, 18, 28, 38, 48 und 58 Sekunden jeder Minute einen
Impuls.
Der autonome Roboter kennt die Koordinaten der Sender 1..4 und hat einen
Ultraschall-Empfänger. Aufgrund der Laufzeiten errechnet sich der
Roboter alle 10 Sekunden seine Position neu (Koordinaten: Xr/Yr/Zr),
und dies mit einer Genaugigkeit von +/- 5mm. Die ganze Berechnung wurde
in Integer-Format realisiert und ist verdammt schnell...
Am liebsten wäre mir eine Implementierung mit Microcontrollern ... Ich
denke minimum sollte es 30Samples/Sekunde haben ;) An Infrarotkamera und
Infrarot sender dachte ich auch, aber mit Microcontrollern kann man das
ja schlecht auswerten ...
MfG