ha @317070, bedankt voor dat eerste linkje, interessant project is dat !
Het zou met laser kunnen werken.. RFID is geen oplossing voor de resolutie die we zoeken, dat zou teveel chips en montagewerk vereisen, je moet het dan in, of onder de vloerbedekking aanbrengen. Het laser-meetlint hadden we hier ook bedacht, alleen hoe automatiseer je zo'n ding ? We hebben het over een autonoom apparaat, dus er is een interface nodig, of je moet hem slopen en een apart printje maken voor de knoppen en het display afvangen. Bijvoorbeeld bij
Conrad staan er diverse onder de 100 euro. Iets met een kant en klare USB aansluiting is lastiger.. Voor kleinere schaal (d.w.z. voorwerpen) zijn er
apparaten te vinden die je kunt aansluiten op een 3D-printer. Maar iets met een bereik van 10-15 meter
met interface..
wil je
dat hebben, dan zitten we ineens
ver boven ons budget !
Ok.. de brainstorm is hier intussen natuurlijk verder gelopen, gisternacht. Andere opties die we hebben bedacht:
- 1. een groot aantal foto's maken rondom.. en dan ofwel met raw power (en een nog onbekend rekenmodel, met onbekende camerapositie) een interne representatie opbouwen (3D-model) van de kamer
- 2. een groot aantal foto's maken, bijvoorbeeld 20 rotaties, voor elke small displacement (bijv. 10 cm), die opslaan.. en dan bij een opname op positie (X,Y) zoek je de beste match
Methode (1) heeft wat voetangels en klemmen.. je kunt uit foto's of een filmpje wel geometrie afleiden, maar alle methoden daarvoor die ik ken gaan uit van een bekende (vaste) camerapostitie ! Rest een kip-of-ei probleem dus, want die positie hebben we niet. Dat probleem geldt deels ook voor methode (2) omdat bij een geautomatiseerde "scan" er een fout gaat optreden in de displacement, die cumulatief is. Gebruik je bijvoorbeeld een karretje met rupsbanden, dan is de displacement alleen in één richting nauwkeurig te bepalen. Bovendien vereist methode (2) ongeveer 2000 plaatjes per m
2 en we betwijfelen of de resultaat pattern-match met een Raspberry Pi behapbaar is. Dat is overigens (op zichzelf) geen showstopper, want we kunnen met Wifi koppelen aan een grondstation, voor de "leerfase".
- 3. Onnauwkeurige displacements, i.s.m een klein aantal referentieposities m.b.v. RFID
- 4. Onnauwkeurige displacements, i.s.m een klein aantal referentieposities op de muur, laser en lichtgevoelige cellen
- 5. Heen en weer rijden, collision position detect en collision angle detect voor opbouwen van een interne representatie.
- 6. Een slimme meetkabel
Methodes (3) en (4) zijn natuurlijk een mooie manier om het elegant en simpel te houden: de detectie is aan/uit. Voordeel van optisch werken is dat je
referentie-lijnen krijgt. Nadeel is dat de devices gemonteerd moeten worden, het is vrij duur, de servo's voor de aandrijving moeten nauwkeurig zijn, om de displacement-fouten te beperken. Maar in principe kun je met referentieposities wel een
grid van secties opbouwen.
Beide methoden hebben het nadeel, dat je zo'n referentiepositie wel moet kunnen vinden met een vrij bewegend apparaat ! dat is geen triviale taak. Lokaal "calibreren" kost tijd.
Collision detect (5) is natuurlijk ook een optie. Dat is wat bijvoorbeeld een robot-stofzuiger doet. Cumulatieve fouten als gevolg van onnauwkeurigheden in de eigen beweging (motoren) spelen hier wel weer mee. Mogelijk is het een optie, om e.e.a. te combineren met een electronisch kompas. Dan weet je in elk geval, wanneer je "haaks op de wand" staat.
De slimme meetkabel (6) is mijn droom. Stel, je hebt een kabel van een bepaalde lengte, die vast zit aan een referentiepositie en aan het apparaat. De kabel ligt plat op de vloer. Op regelmatige punten in de kabel zit een hoekmeter.Dan kun je dus in een 2D-model (
splining) uitrekenen, waar het uiteinde van de kabel (X,Y) zich bevindt ten opzichte van het punt (Xref,Yref) waar de kabel vastzit. Problemen: opvolgende hoekmetingen hebben elk een eigen foutmarge.. en.. wie heeft een leverancier voor een dergelijke kabel, bestaat zo'n ding wel ?