PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Präzises Ortungssystem gesucht



northnorway
07.06.2006, 12:41
Hallo zusammen,

ich möchte mehrere Roboter innerhalb einer Fläche von ca. 10 x 10 m präzise orten (ca. +/- 2 cm). Das könnte man theoretisch mit einer entsprechend angebrachten Kamera und einer Bilderkennungssoftware lösen.
Allerdings bin ich auf der Suche nach alternativen Methoden und wäre dankbar, wenn mir jemand einen kleinen Tipp geben könnte.
Ich bin allerdings auch an Material hinsichtlich der Lösung über Bilderkennung interessiert.

Im Vorraus schon mal vielen Dank für Eure Tipps und Antworten!

cauboy
07.06.2006, 13:23
auf 10m*10m wäre funk sehr schnell würde ich sagen. vllt kann man genauere ergebnisse erzielen, wenn man statt funk, wie bei gps, schall nehmen würde, schließlich ist das um einiges langsamer. einfach 3 ultraschallsender mit je ganz bestimmten frequenzen gleichzeitig signale aussenden lassen. dann die laufzeitunterschiede messen und entsprechend auswerten.
Ist nur eine Idee, sollte aber wohl machbar sein, oder?

northnorway
07.06.2006, 13:40
Danke für die Antwort. Die Idee ist sicherlich umsetzbar. Allerdings wäre mir ein fertiges System lieber.
Kennt vielleicht jemand einen Hersteller für so ein System?

UlrichC
07.06.2006, 15:26
Die Kameraidee ist gut.
Wenn Du die Roboter farblich makierst könntest du sogar sagen wer wo steht.
Im Grunde könnte man das gar mit VB und ein paar netten Zeilen Code bewerkstelligen.

Wie viele Roboter ca.?
Sind die Roboter eindeutig zu identifizieren?
Sind die 10x10 Meter eine Freifläche?
Wie groß sind diese Roboter?
Kann man vielleicht über der 10m² Fläche eine Kamera installieren?
Kannst Du etwas Programmieren ... wenn nicht wirds teuer... den Leute die solche Software vermarkten, halten sich meist für Magic, und langen beim Preis richtig zu.

northnorway
07.06.2006, 15:31
Ich habe auch das Gefühl, dass es wohl auf eine Kamera-basierte Lösung rausläuft. Eine WebCam kann problemlos über der Fläche (mittig) angebracht werden. Farbliche Markierung der Roboter ist auch kein Problem; diese sind rund und ca. 20 cm Durchmesser.
Allerdings haben meine bisherigen Recherchen ergeben, dass sich schon eine Menge Leute mit solchen Software-Lösungen beschäftigt haben und ich will eigentlich nicht unbedingt bei null anfangen.
Weiß vielleicht jemand, ob es freien Source-Code oder Code-Bibliotheken für solche Anwendungen gibt?

Felix G
07.06.2006, 16:23
Denk aber auch daran daß die Auflösung nicht zu niedrig sein darf...

angenommen du hast eine billige Webcam mit einer Auflösung von 640x480 (wovon du bei einer quadratischen Fläche aber nur maximal 480x480 nutzen kannst), dann wären das bei einem 10x10m großen Feld etwas mehr als 20mm pro Pixel. Im Idealfall hättest du also etwa deine geforderte Genauigkeit erreicht.

Dummerweise hat eine Webcam mit 640x480 Pixeln normalerweise eine deutlich niedrigere Auflösung, da die Pixel ja jeweils mit Farbfiltern versehen sind. Konkret bedeutet das, daß 1 Farbpixel auf dem Bild eigentlich 4 Pixeln auf dem Chip entspricht (nämlich jeweils 1xR, 2xG, 1xB). Die Auflösung des Farbbildes läge also bei minimal 160x120 (Farb)Pixeln, was auf dem 10x10m Feld etwa 84mm pro Pixel wären.

Wie so oft liegt die Wahrheit irgendwo dazwischen, aber um sicher zu sein wäre es wohl nicht verkehrt etwa das doppelte der minimal benötigten Auflösung zu wählen, was in deinem Fall 1000x1000 Pixel wären.

UlrichC
07.06.2006, 17:17
Du hättest viele Möglichkeiten wenn du Programmieren könntest.
Ich habe schon ein paar Leuten eine Suite voller VB-Beispielen für Bilbearbeitung geschickt, das half fast jedes mal.
Kannst Du VB oder eine andere Programmiersprache?

Felix G
07.06.2006, 17:46
Ich habe mir das nochmal durch den Kopf gehen lassen...

ein normaler 640x480 Farb-Bildsensor hat bei den Kanälen R und B jeweils die von mir bereits erwähnte Auflösung von 160x120, der grüne Kanal hingegen liegt bei 320x240 da ja jedes zweite Pixel ein Grünfilter hat. Das bedeutet, daß man sich zur Positionsbestimmung auf den grünen Kanal beschränken kann (da dieser immer die höchste Auflösung hat), was die Bildverarbeitung schonmal deutlich erleichtert.


für das farbliche Design der Roboter hätte ich daher zwei Vorschläge:
1. jeder Roboter hat außen einen Farbring, in einer Farbe die beim grünen Kanal maximalen Kontrast zum Untergrund erzielt (also bei einem schwarzen, roten oder blauen Untergrund ein grüner oder weisser Ring, und bei einem grünen oder weissen Untergrund entsprechend ein schwarzer, roter oder blauer Ring). Innerhalb dieses Rings erhalten die Roboter dann unterschiedliche Farben um sie unterscheiden zu können

oooder

2. die Roboter werden derart gefärbt, daß sie auf dem grünen Kanal alle gleich aussehen und maximalen Kontrast zum Untergrund haben. Zur Unterscheidung der Roboter dienen dann die beiden anderen Kanäle.

Beispiel:
Boden - R=0 G=0 B=0
Bot1 - R=0, G=255, B=0
Bot2 - R=255, G=255, B=0
Bot3 - R=128, G=255, B=255
etc. etc.