Hallo liebes Mikrocontroller-Forum! Schon nach sehr kurzer Suchzeit hat sich für mich herausgestellt: Positionsbestimmung innerhalb eines Raumes mit einer Auflösung von cm/mm scheint wohl eines der ungelösten Probleme der Elektrotechnik zu sein. Allerdings zuerst zu meinem Problem: Ziel ist es auf einem Tisch (ca. 2m x 1,5m) die Position (Größenordnung wenige zwischen 1cm +- 0,5cm) mehrerer kleiner Objekte zu erkennen. Deren Maße liegen ungefähr bei 5cm x 5cm x 2cm, die exakten Maße stehen aber nicht fest und dürfen sich geringfügig im Bereich von wenigen Zentimetern ändern. Es gibt hierbei einige Einschränkungen, die die Positionsbestimmung hoffentlich einfacher bzw. überhaupt möglich machen. So müssen Objekte nur zuverlässig erkannt werden, wenn sie auf dem Tisch stehen. Es ist auch nicht zu erwarten, dass Objekte sehr hohe Geschwindigkeiten erreichen, stattdessen würde ich hier mit der "üblichen" Geschwindigkeit rechnen, mit der man Objekte typischerweise über einen Tisch schiebt (z.B. Schachfiguren). Der Tisch selbst darf um Sensoren erweitert werden, allerdings dürfen sich diese nicht direkt unter der Tischplatte befinden, da es sich hierbei um einen Glastisch mit einem Holzrand handelt (nur im Holzrand kann Technik verbaut werden). Zum aktuellen Zeitpunkt habe ich bereits einen kleinen Testaufbau mit einem 9DOF Sensor (LSM9DS1), von dem ich allerdings noch nicht weiß, ob er überhaupt genau genug ist. Hierbei habe ich erfahren, dass sich bei der Positionsbestimmung über die Beschleunigung sehr schnell Fehler einschleichen. Aus diesem Grund suche ich nun nach einer unterstützenden Lösung, sodass dieser Fehler in gewissen Zeitabständen korrigiert werden kann. Ich hab hier z.B. an Triangulation gedacht, bei der im Tisch Sender und in den Objekten Empfänger verbaut sind. Allerdings weiß ich nicht, wie man so etwas bewerkstelligen kann (d.h. welche Technik verwendet man hier?). Habt ihr zufällig Erfahrungen konkret mit Triangulation gemacht oder habt ihr eine andere Idee wie man so eine Positionsbestimmung umsetzen könnte? Ich bin generell für alle Vorschläge offen, das Projekt befindet sich noch in seinen Anfängen - es ist deshalb nichts in Stein gemeißelt. Ideen wie bspw. die Erkennung der Objekte mit einer Kamera und ML habe ich vorerst schon verworfen, da ich hier vor allem das Problem sehe, dass jemand in das Bild laufen könnte und so auch neue Objekte jedes Mal antrainiert werden müssten. Natürlich wäre es auch wünschenswert, wenn man keine "externe" Hardware außer dem Tisch und den Objekten benötigt (z.B. eine Kamera die an der Decke installiert ist). So viel möchte ich aber dann doch nicht verlangen, da es sich ja hierbei ohnehin bereits um ein kniffliges Problem handelt. Liebe Grüße
Mit "die Position (Größenordnung wenige zwischen 1cm +- 0,5cm) mehrerer kleiner Objekte zu erkennen" zu erkennen. Meinst Du die Position der Objekte relativ zu dem Tisch (also Anordnung auf dem Tisch) oder die Lage der Objekte relativ zueinander, oder die Lage der Objekte im Raum (liegend, stehend, gedreht etc)?
Tut mir Leid, das Wichtigste habe ich natürlich vergessen. :-) Vielen Dank für den Hinweis! Ziel ist die Position der Objekte relativ zum Tisch zu erkennen. Da es auch nur notwendig ist, die Objekte zu erkennen wenn sie auf dem Tisch liegen, kann man das Problem auch auf einen 2D-Raum reduzieren (liegend / stehend ist irrelevant). Die Orientierung ("Blickrichtung") der Objekte wollte ich mit einem Magnetometer messen - sofern das geht (probiert habe ich es noch nicht).
Die einfachste Lösung wäre eine Webcam über dem Tisch anzubringen. Mit einem Raspberry Pi und OpenCV hat man dann sehr schnell eine einfache Positionsbestimmung zusammengestrickt.
> eines der ungelösten Probleme
Einfach abwarten. Die Automobilindustrie steckt Milliarden in die
Entwicklung einer universellen Objekterkennung / Positionsbestimmung.
Kann ja nicht mehr lange dauern, bis Werkstudenten die erfolgreichen
Konzepte als freie Software zusammenstellen.
Wurstrakete schrieb: > Die einfachste Lösung wäre eine Webcam über dem Tisch anzubringen. Wenn das nicht geht, weil sich dauernd Leute drüber bücken, um die Objekte zu verschieben: WebCam unter dem Tisch, da aus Glas. Weiter mit OpenCV.
kuchenkruste schrieb: > Positionsbestimmung innerhalb eines Raumes mit einer Auflösung von cm/mm > scheint wohl eines der ungelösten Probleme der Elektrotechnik zu sein. Sowas kann man schon seit vielen Jahrzehnten, allerdings nicht mit Spielzeugcomputern.
Vielen Dank für eure Antworten! > Die einfachste Lösung wäre eine Webcam über dem Tisch anzubringen. Mit > einem Raspberry Pi und OpenCV hat man dann sehr schnell eine einfache > Positionsbestimmung zusammengestrickt. Ich habe leider auch vergessen zu erwähnen, dass die Objekte eindeutig identifizierbar sein müssen. Es reicht also leider nicht aus mit OpenCV einfach nur Gegenstände zu erkennen, ich benötige von jedem Objekt eine ID und seine Position, da im Nachhinein eine Software die Objekte am PC darstellen soll. > Kann ja nicht mehr lange dauern, bis Werkstudenten die erfolgreichen > Konzepte als freie Software zusammenstellen. So lange wollte ich eigentlich nicht mit meinem kleinen, "nicht-ganz-milliardenschweren" Hobbyprojekt warten. Wäre aber natürlich wirklich toll, wenn das in Zukunft geht und öffentlich zur Verfügung steht. :-) > Wenn das nicht geht, weil sich dauernd Leute drüber bücken, um die > Objekte zu verschieben: WebCam unter dem Tisch, da aus Glas. Weiter mit > OpenCV. Wenn ich noch einmal so darüber nachdenken, ist das Drüberbücken auch gar nicht das größte Problem. Es ist nicht schlimm, wenn sich Objekte zeitweise vom Tisch "abmelden" um sich dann an einer neuen Position wieder "anzumelden" (z.B. wenn sich jemand über den Tisch bückt und das Objekt verschiebt). Vielmehr sehe ich bei der Erkennung mit einer Kamera das Problem, dass es schwer wird Objekte eindeutig zu identifizieren. Außerdem besteht leider keine Möglichkeit unter der Glasplatte Technik zu verbauen.
Harald W. schrieb: > Sowas kann man schon seit vielen Jahrzehnten, allerdings nicht mit > Spielzeugcomputern. Das macht mich neugierig: Welche Technik wird denn hier eingesetzt und weshalb ist dafür sehr viel mehr Rechenleistung notwendig (so habe ich das herausgelesen)?
kuchenkruste schrieb: > Ich habe leider auch vergessen zu erwähnen, dass die Objekte eindeutig > identifizierbar sein müssen. Diese Salami-Scheiben, die hier als zusätzliche Infos nachgeschoben werden, sind leider nicht sehr erbaulich. > Außerdem besteht leider keine Möglichkeit unter der Glasplatte Technik > zu verbauen. Diese ebenso. Vielleicht rückst Du erstmal mit mehr Details rüber, bevor sich hier hunderte von Leuten Gedanken machen, die Du dann einfach mit "habe vergessen zu erwähnen" in die Tonne drückst? Was ist denn mit den Objekten selber, kann man darin "Technik" verbauen oder sind das etwa nur Kuchenkrümel?
:
Bearbeitet durch Moderator
> Diese Salami-Scheiben, die hier als zusätzliche Infos nachgeschoben > werden, sind leider nicht sehr erbaulich. Das tut mir Leid, wenn es so herübergekommen ist. Das war mit Sicherheit nicht meine Absicht. Wie du sicherlich weißt, ist es nicht immer leicht ein Projekt von dem man selbst genaue Vorstellungen hat jemand anderem vollumfänglich und ohne verbleibende offene Fragestellungen zu erklären. Ich versuche das Ganze hier noch einmal zu präzisieren: Es handelt sich um Objekte die ähnlich wie ein Puck beim Eishockey geformt sein sollen. Da ich diese selbst im 3D-Drucker drucke, habe ich völlige "Narrenfreiheit". Es kann also beliebige Technik verbaut werden. Wenn diese erfordert, dass das Objekt nicht rund sein kann, stellt auch das kein Problem dar. Die Objekte sollen allerdings einheitlich gestaltet sein, eine Identifizierung über optische Unterschiede möchte ich also erst einmal ausschließen. Die Identifizierung der Objekte ist notwendig, damit ich am Rechner jedes dieser Objekte grafisch darstellen und ihnen gegebenenfalls noch andere Metadaten zuordnen kann. Außerdem ist die Orientierung (2D-Blickrichtung auf dem Tisch) wichtig, damit am Rechner nicht nur dargestellt werden kann wo sich ein Objekt befindet, sondern auch in welche Richtung es blickt. Später soll die Möglichkeit bestehen, auf bestimmte Ereignisse zu reagieren (z.B. "Objekt mit der ID 3 steht nun an Position XY und blickt in Richtung U" - eine Blickrichtung ist hierbei relativ zu einem frei wählbaren Tischkopf zu interpretieren). Direkt unter der Glasplatte kann keine Technik verbaut werden, da es sich hierbei um einen ästhetischen Anspruch handelt - man soll dem System seine Technik so wenig wie möglich ansehen. Die Glasplatte selbst nimmt nicht die gesamte Größe des Tisches ein, die Tischplatte ist rund um die Glasplatte ca. 30cm breiter und besteht dort aus Holz. Hier kann auch beliebig viel Technik verbaut werden, da ohnehin unter der Tischplatte Lautsprecher verbaut werden und man sich diese dementsprechend als Hohlkörper vorstellen kann. Die Glasplatte schließt mit dem Holz obenauf eben ab, man kann also keine Ultraschallsensoren oder ähnliches im Holz verbauen, die dann horizontal über die Glasplatte Objekte erkennen können. Die Blickrichtung der Objekte darf man hierbei als "Nice-To-Have" verstehen, soll heißen: Die Identifizierung und Position der Objekte ist wesentlich wichtiger. Der Einsatz des Tisches steht außerdem nicht fest - der Nutzer der Software soll selbst darüber entscheiden, was er mit den Informationen der Objekte macht (allerdings ist das hauptsächlich ein Software-Problem und steht ja erst einmal nicht mit der eigentlichen Positionserkennung in Zusammenhang). Denkbar wäre z.B. ein Zeichenprogramm, bei dem man mit den Objekten auf dem Tisch malen kann, oder aber auch ein Schachspiel bei dem die Objekte die Figuren repräsentieren. Sollte noch etwas unklar sein, bitte ich das zu entschuldigen und mich darauf hinzuweisen. Ich versuche gerne, das Ganze noch genauer zu beschreiben, wenn ich weiß, wo es hapert.
kuchenkruste schrieb: > Die Glasplatte schließt mit dem Holz obenauf eben ab Damit ist der Holzrahmen für Technik absolut nutzlos. Auch ist ein IR-Teppich, wie er bei größeren Touchscreens verwendet wird, ebenso raus. Dieser müsste nämlich oberhalb der Glasfläche erzeugt werden, also am besten in einem 5mm überstehenden Rahmen. Bleibt nur noch die Kamera von oben. Die Objekte könnten nach oben einen eindeutigen "Morse-Code" per IR als Identifikationscode ausstrahlen, welcher von der Kamera erfasst werden kann. Die meisten Cams "sehen" IR bzw. man kann den IR-Filter ausbauen. Bleibt noch die Ausrichtung eines Objekts: Wenn dieses von oben nicht rotationssymmetrisch aussieht, kann man auch die Ausrichtung erkennen. Ist ja auch sinnvoll für den Menschen: Wie soll er eine kreisförmige Scheibe wie einen Eishockey-Puck "ausrichten"?
:
Bearbeitet durch Moderator
Vielen Dank für deine Antwort! > Auch ist ein IR-Teppich, wie er bei größeren Touchscreens verwendet > wird, ebenso raus. Dieser müsste nämlich oberhalb der Glasfläche erzeugt > werden, also am besten in einem 5mm überstehenden Rahmen. Das klingt erst einmal gar nicht nach einer so schlechten Idee - denn an einen Rahmen rings um das Glas herum (den man z.B. immer wieder abnehmen kann und der nur temporär auf den Tisch gelegt wird) habe ich noch gar nicht gedacht. Ich kenne mich leider selbst nur bedingt mit solchen Dingen aus, da ich mehr Software- als Hardwareingenieur bin. Wie würde denn so ein Aufbau im Prinzip funktionieren? Ich sehe hier vor allem das Problem, dass sich gegenüberliegende Infrarotsensoren gegenseitig beeinflussen würden, oder? Und wenn man den Sensor nur an einer Seite installiert könnten ein "Puck" einen anderen verdecken. > Bleibt nur noch die Kamera von oben. Die Objekte könnten nach oben einen > eindeutigen "Morse-Code" per IR als Identifikationscode ausstrahlen, > welcher von der Kamera erfasst werden kann. Die meisten Cams "sehen" IR > bzw. man kann den IR-Filter ausbauen. > > Bleibt noch die Ausrichtung eines Objekts: Wenn dieses von oben nicht > rotationssymmetrisch aussieht, kann man auch die Ausrichtung erkennen. > Ist ja auch sinnvoll für den Menschen: Wie soll er eine kreisförmige > Scheibe wie einen Eishockey-Puck "ausrichten"? Das klingt zwar auch nach einer guten Idee um die Objekte zu identifizieren, allerdings sehe ich hier das Problem, dass der Einsatz des Tisches ja vom Benutzer frei gewählt werden kann: Angenommen jemand möchte den Tisch für ein Schachspiel verwenden. Dann ist es denkbar, dass Bilder von Schachfiguren auf die Objekte geklebt werden, was dann eventuell zu einer Verdeckung der Infrarotsender führt. Andere Szenarien sind hier auch denkbar, z.B. wenn jemand den Tisch als Zeichentisch verwendet und die Objekte vollständig mit farbigen Bastelvlies beklebt. Auch hier wäre ein Infrarotsensor vermutlich bedeckt. Würde denn ein Kompass nicht ausreichen um die Orientierung eines Objektes zu erkennen? Ich hatte das vorerst für das "kleinere" Problem gehalten. Hierbei habe ich mir z.B. vorgestellt einen Kompass in den Tisch und in jedes Objekt einzubauen, sodass dann die relative Ausrichtung der Objekte zum Tisch berechnet werden kann. Da der Nutzer selbst entscheidet, was er mit den Objekten macht, kann er über die Software am Rechner auch selbst entscheiden, welche Ausrichtung die Nullstellung ist. Ob man dann den Objekten ihre Orientierung ansieht ist somit quasi nicht mehr mein Problem.
Klebe oben auf Deine Objekte QR-Codes auf. Diese können irgendwelche IDs enthalten, die die Objekte unterscheidbar machen, und die Orientierung der QR-Codes ist auch eineindeutig und kann festgestellt werden. Die Basistechnologie ist verfügbar und einfach umsetzbar. Bibliotheken gibts fertig. Einzig die Auflösung der Kamera ist der kritische Faktor. Für Dich ist auch Micro-QR ausreichend. fchk
kuchenkruste schrieb: > Hierbei habe ich mir z.B. vorgestellt einen Kompass in den > Tisch und in jedes Objekt einzubauen, sodass dann die relative > Ausrichtung der Objekte zum Tisch berechnet werden kann Ist dir klar, dass dazu die Objekte Informationen liefern müssen, also Sender enthalten? Es nützt wenig wenn nur das Objekt selbst seine Ausrichtung kennt. Nächste Salamischeibe bitte. Georg
> Ist dir klar, dass dazu die Objekte Informationen liefern müssen, also > Sender enthalten? Es nützt wenig wenn nur das Objekt selbst seine > Ausrichtung kennt. Die Wahl des Innenlebens habe ich ja bereits bewusst offen gelassen. Ich kann mir zum Beispiel einen Mikrocontroller mit einem BT-Modul vorstellen. Über diesen Weg könnte auch von jedem Objekt eine eindeutige ID mitgeschickt werden. Wie gesagt: In die Objekte kann beliebige, auch aktive, Technik eingebaut werden. Den Größenverhältnissen von ein paar Zentimetern entsprechend muss diese Technik natürlich mit einer Batterie oder einem Akku betrieben werden können. Hauptproblem stellt aus meiner Sicht allerdings immer noch die eigentliche Positionierung dar. Ich habe bereits etwas über Triangulation mit BT-Signalstärken gelesen - ob das wirklich funktioniert und eine Möglichkeit darstellt weiß ich allerdings noch nicht. Daher kam auch mein ursprünglicher Gedanke, die Triangulation betreffend, aus meinem ersten Beitrag. > Klebe oben auf Deine Objekte QR-Codes auf. Diese können irgendwelche IDs > enthalten, die die Objekte unterscheidbar machen, und die Orientierung > der QR-Codes ist auch eineindeutig und kann festgestellt werden. > > Die Basistechnologie ist verfügbar und einfach umsetzbar. Bibliotheken > gibts fertig. Einzig die Auflösung der Kamera ist der kritische Faktor. > > Für Dich ist auch Micro-QR ausreichend. Das ist natürlich eine Idee, die funktionieren würde. Das würde aber bedeuten, dass über dem Tisch eine Kamera installiert ist. Diese benötigt Sichtkontakt zum Tisch. Über den meisten Tischen hängt eine Lampe, welche den Sichtkontakt unterbrechen kann. Und selbst wenn nicht, kann ich wegen des QR-Codes keine anderen Motive mehr auf die Objekte kleben bzw. Figuren o.ä. darauf stellen. Alles in allem habe ich die Idee einer Bilderkennung schon auf dem Schirm (wie ich ja auch einleitend geschrieben habe), möchte aber erst nach anderen Lösungen Ausschau halten. Aufbauend auf Frank M. seinem Vorschlag, könnte ich mir zum Beispiel auch einen mobilen Rahmen vorstellen, in dem ringsherum Sensoren (IR, Ultraschall, Kameras, o.ä.) eingelassen sind. In Kombination mit einem 9DOF und einer Triangulation (wenn das in der Größenordnung überhaupt funktioniert) müsste eine halbwegs passable Positionserkennung doch möglich sein, oder?
kuchenkruste schrieb: > Das klingt erst einmal gar nicht nach einer so schlechten Idee - denn an > einen Rahmen rings um das Glas herum (den man z.B. immer wieder abnehmen > kann und der nur temporär auf den Tisch gelegt wird) habe ich noch gar > nicht gedacht. Abnehmen und wieder drauflegen wird aber ziemlich aufwendig. > Wie würde denn so ein Aufbau im Prinzip funktionieren? Prinzip solcher größeren IR-Touchscreens ist: Jeweils an einer langen und einer kurzen Seite kommen IR-Dioden dicht an dicht. Auf den jeweils gegenüberliegenden Seiten kommen IR-Sensoren - ebenso viele dutzend direkt nebeneinander. Diese "erkennen" dann die Abschattungen der Objekte. > Ich sehe hier vor allem das > Problem, dass sich gegenüberliegende Infrarotsensoren gegenseitig > beeinflussen würden, oder? Siehe oben: Es gibt keine Sensoren "gegenüber". Auf der einen Seite sind Sender, auf der jeweils anderen sind IR-Empfänger. > Und wenn man den Sensor nur an einer Seite > installiert könnten ein "Puck" einen anderen verdecken. Ja, kann passieren. Dann hat man von den beiden Koordinaten x,y nur noch eine von beiden. > Das klingt zwar auch nach einer guten Idee um die Objekte zu > identifizieren, allerdings sehe ich hier das Problem, dass der Einsatz > des Tisches ja vom Benutzer frei gewählt werden kann: Angenommen jemand > möchte den Tisch für ein Schachspiel verwenden. Dann ist es denkbar, > dass Bilder von Schachfiguren auf die Objekte geklebt werden, was dann > eventuell zu einer Verdeckung der Infrarotsender führt. Pech gehabt. Einen Tod musst Du sterben. Du kannst nicht alle Parameter frei wählbar lassen und trotzdem eine generell funktionierende Lösung erwarten. > Würde denn ein Kompass nicht ausreichen um die Orientierung eines > Objektes zu erkennen? Ich hatte das vorerst für das "kleinere" Problem > gehalten. Hierbei habe ich mir z.B. vorgestellt einen Kompass in den > Tisch und in jedes Objekt einzubauen, sodass dann die relative > Ausrichtung der Objekte zum Tisch berechnet werden kann. Dazu muss das Objekt seine Kompass-Info zusammen mit seiner Kennung an eine zentrale Stelle senden. Ich glaube, Du stellst Dir das alles viel zu einfach vor.
:
Bearbeitet durch Moderator
Vielleicht kann man die Glasplatte mit Mustern (qc codes etc.) bedrucken die nur in Infrarot oder Schwarzlicht sichtbar sind. Deine Puks könnten diese dann mit einer Kamera und enstsprechender LED auslesen und Ihre Position funken. Alternativ funktionieren ordentlich Computermäuse ja auch auf Glas, da könnte man eine relative Position besser bekommen als mit deinen Beschleunigungssensoren. Geht halt nicht mehr wenn jemand das Teil hochhebt, und man muss einmal die Anfangsposition bestimmen. Ist vielleicht in Kombination mit der Idee oben brauchbar.
An die Objekte gehören Marker (Beispiel: s. Bild), am Besten unten drunter. Durch die Glasplatte von Unten guckt eine Kamera, mit entsprechendem Rechner u. Software (z.B. OpenCV). Damit die Kamera nicht zu deutlich zu sehen ist, kann man sie hinter einer getönten Glasplatte am Boden des Raumes im Tisch verstecken. Evtl. zusätzliche IR-Beleuchtung ... Wenn die Kamera Full HD Auflösung hat und die Tischplatte ca. 2 x 1 m misst, kommt man auf eine Auflösung von ca. 1,5 mm. Für ein schnelles Erfolgserlebnis kann ich übrigens einen Blick auf die Software "Processing" empfehlen, für die es per Klick einzubindende OpenCV-Lib (und andere, z.B. "nyartoolkit" zur Objekterkennung) und zahlreiche Beispiele zur Marker-Erkennung gibt. https://www.youtube.com/watch?v=a9nXZqtkrsk Processing läuft überigens unter Win, Mac u. Linux (auch Raspberry). Vlt. hat ja der neue 4er genug Rechenpower. Meine Tests habe ich auf einem 10 Jahre alten Macbook gemacht.
:
Bearbeitet durch User
Frank E. schrieb: > Für ein schnelles Erfolgserlebnis kann ich übrigens einen Blick auf die > Software "Processing" empfehlen, für die es per Klick einzubindende > OpenCV-Lib (und andere zur Objekterkennung) und zahlreiche Beispiele zur > Marker-Erkennung gibt. > > Youtube-Video "Multiple augmented reality marker tracking with > processing and nyartoolkit (1/2)" Das ist echt beeindruckend. Ort und Orientierung gehen damit in Echtzeit. Schade, dass der TO jedwede Technik unter dem Tisch ausschließt. Dann muss er es halt von oben machen und sich mit seinen potentiellen "Kunden" auf entsprechende Marker-Muster einigen.
Schaust vielleicht mal hier. Die haben ein paar Ideen: https://www.mi.fu-berlin.de/inf/groups/ag-tech/teaching/2009-10_WS/S_19510b_Proseminar_Technische_Informatik/schmidt10positionsbestimmung.pdf Liebe Grüße
Eine weitere Idee wäre das so ähnlich wie bei den VR Headsets zu lösen. In deinen Spielsteinen auf der Unterseite Eine oder Mehrere Photodioden + einen µC + Funk Modul Im unterem Teil Tischbeine eine IR-Laserdiode mit einer "Linienoptik" + Spiegel und Aktuator für Spiegel(z.B Servo, oder Motor mit präziser Drehzahlregelung). Das machst du an 2 Tischbeinen (X und Y) und "scannst" die Tischplatte von unten ab.. Dazu noch ein Paar IR Dioden um die Spielsteine zu "synchronisieren" und den Scannvorgang zu initialisieren. nach dem initialisieren starten die Spielsteine einen Timer. wenn die Photodioden vom Laser beleuchtet werden, Timer auslesen und mit ID und "Scannrichtung" zum PC senden. wenn du mehrere Photodioden pro Spielstein verwendest, kannst du die Blickrichtung auch noch bestimmen. Sicher kein einfaches Unterfangen aber könnte funktionieren Beste Grüße Herr Laser
> Das ist echt beeindruckend. Ort und Orientierung gehen damit in > Echtzeit. Schade, dass der TO jedwede Technik unter dem Tisch > ausschließt. Dann muss er es halt von oben machen und sich mit seinen > potentiellen "Kunden" auf entsprechende Marker-Muster einigen. Ich möchte an dieser Stelle klar stellen, dass es sich um ein Hobbyprojekt handelt. Wenn du es genau wissen möchtest, schließe ich Technik unter der Glasscheibe aus, da ich mit dem Gedanken spiele hier einen zusätzlichen Bildschirm anzubringen. Das Ganze soll dann u.A. als Tisch für gemütliche Tabletop-RPG-Abende dienen. Da ich aber auch ohne den Bildschirm keine Technik durch die Glasscheibe sehen möchte, ist eben genau das einfach nicht mein Ziel. > Vielleicht kann man die Glasplatte mit Mustern (qc codes etc.) bedrucken > die nur in Infrarot oder Schwarzlicht sichtbar sind. Deine Puks könnten > diese dann mit einer Kamera und enstsprechender LED auslesen und Ihre > Position funken. > > Alternativ funktionieren ordentlich Computermäuse ja auch auf Glas, da > könnte man eine relative Position besser bekommen als mit deinen > Beschleunigungssensoren. Geht halt nicht mehr wenn jemand das Teil > hochhebt, und man muss einmal die Anfangsposition bestimmen. Ist > vielleicht in Kombination mit der Idee oben brauchbar. Das ist ja eine sehr interessante Idee! :-) Anscheinend gibt es leider keine IR-Farbe wie man das bei UV kennt, aber zumindest die Idee mit dem UV-Licht werde ich nochmal weiter verfolgen. An Computermäuse habe ich auch noch gar nicht gedacht, vielleicht ließe sich die Sensordaten vom Beschleunigungssensor damit irgendwie korrigieren (wenn die UV-Idee nichts wird). > An die Objekte gehören Marker (Beispiel: s. Bild), am Besten unten > drunter. Durch die Glasplatte von Unten guckt eine Kamera, mit > entsprechendem Rechner u. Software (z.B. OpenCV). Die Idee ist auch ziemlich gewitzt: Ich habe davon schon mal ein Video gesehen, in dem jemand eine halbtransparente Glasplatte mit einem Beamer von unten beleuchtet hat. Eine Infrarotkamera hat dann von unten "Touch"-Eingaben verarbeitet. Allerdings gilt leider auch hier: Ich würde gerne erst "alles" Mögliche versuchen, bevor ich zum letzten Mittel "Technik unter/über der Glasscheibe" greife. Die Auflösung von 1.5mm klingt sehr vielversprechend - hast du da schon Erfahrungen mit der Reaktionszeit gemacht? Wenn es soweit kommt, würde ich es vermutlich auch mit dem neuen Raspi ausprobieren. > Schaust vielleicht mal hier. Die haben ein paar Ideen: > https://www.mi.fu-berlin.de/inf/groups/ag-tech/teaching/2009-10_WS/S_19510b_Proseminar_Technische_Informatik/schmidt10positionsbestimmung.pdf Danke, solche Links sind immer willkommen! Das lese ich mir definitiv durch! > Im unterem Teil Tischbeine eine IR-Laserdiode mit einer "Linienoptik" + > Spiegel und Aktuator für Spiegel(z.B Servo, oder Motor mit präziser > Drehzahlregelung). So ähnlich machen VR-Headsets das? Klingt wirklich aufwändig, aber verdammt genial (zumal die Objekte dann ja kaum "Innereien" benötigen). Ich überlege ob ich das vielleicht mit der Infrarot-Teppich Idee kombinieren kann - die Spiegel mit den IRs dann eben nicht ans Tischbein, sondern in den Rahmen.
Du könntest in deine Objekte eine art rfid tag einbauen und auf dem Tisch durchsichtige Leiterbahnen als antennen anbringen (Indium-Zinn-Oxid). Ist aber nicht billig.
> Du könntest in deine Objekte eine art rfid tag einbauen und auf dem > Tisch durchsichtige Leiterbahnen als antennen anbringen > (Indium-Zinn-Oxid). Ist aber nicht billig. Coole Sache! Wenn wir von "nicht billig" sprechen, wie sehr "nicht billig" ist das? Und vor allem: Wer macht so etwas oder kann man das auch selbst auftragen? Und verzeih mir meine Unwissenheit: RFID tags kenne ich, aber wofür benötige ich die Antennen?
Mir kam da auch gerade noch ein Gedanke, den ich hier gerne einbringen würde. Hat jemand Erfahrungen was induktive Touchscreens angeht? Ich kenne mich hier leider nicht sehr gut aus, aber wäre es nicht möglich die Glasscheibe so in einen Touchscreen zu verwandeln, der nur von den Objekten gesteuert werden kann?
kuchenkruste schrieb: > Mir kam da auch gerade noch ein Gedanke, den ich hier gerne einbringen > würde. > > Hat jemand Erfahrungen was induktive Touchscreens angeht? Ich kenne mich > hier leider nicht sehr gut aus, aber wäre es nicht möglich die > Glasscheibe so in einen Touchscreen zu verwandeln, der nur von den > Objekten gesteuert werden kann? Touchscreens sind entweder resistiv (druckempfindlich) oder kapazitiv. Irgendwelche kapazitiven Lösungen auf Glas sind jenseits Deiner Reichweite. Induktive Positionierung nimmt man bei Grafiktablets mit Stiften. Im sensitiven Bereich sind Drähte in X und Y Richtung eingebettet, die als Sende- und Empfangsantennen wirken. Mehr wie ein Stift zur Zeit wird schwierig. Wenn ein gewisses Raster ähnlich einem Schachbrett zulässig ist, kann man auf jedem Feld eine RFID-Antenne unterbringen und somit RFID-Tags orten, die auf einzelnen Feldern liegen. Damit wäre z.B. ein Schachspiel (oder Dame, Mühle, Go, Mensch-ärgere-dich-nicht) realisierbar. Jedes Feld hat natürlich eine gewisse Mindestgröße von ca 1-2 cm^2. Mit Deinem Kenntnisstand wirst Du das wohl eher nicht realisiert bekommen, weil das HF- und schaltungstechnisch nicht ganz einfach ist. Du wirst 13.68MHz-Systeme benutzen müssen, weil nur so die Reichweite gering genug ist, damit die Antennen nicht über das jeweilige Feld hinaus reichen und auch von der Geometrie klein genug sind. Die Orientierung ist so natürlich nicht ermittelbar. Ich denke, Du wirst keine Lösungen jenseits von kamerabasierten Systemen mit irgendwelchen optischen Codes finden, die Du selber mit Deinem Know-How umsetzen können wirst. Bei optischen Systemen hast Du den großen Vorteil, dass Du Dir die Hardware fertig zusammen kaufen kannst und die Bildverarbeitsalgorithmen als open-source bekommen kannst. Antennendesign erfordert ganz andere Fähigkeiten und Messtechnik, die sehr schnell sehr teuer wird. fchk
Ich weiss nicht, ob dir das etwas nützt, aber mit kam beim lesen deiner Projektbeschreibung spontan das Reactable in den Sinn: https://www.youtube.com/watch?v=ltjQJz2uz2E
kuchenkruste schrieb: > kann ich wegen des QR-Codes keine anderen Motive mehr auf die Objekte > kleben bzw. Figuren o.ä. darauf stellen. Eventuell ein kleines Display verwenden. Ein paar Punkte davon am Rand verwenden um die Infos/ID an die Kamera an der Decke zu "morsen". Durch das erkenne der Geometrie der Pixel die da blinken kann sogar die Drehrichtung erkannt werden. Auf dem Rest des Displays dann z.B. die Schachfigur einblenden.
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.