dc.contributor.advisor | Onshus, Tor | |
dc.contributor.author | List, Janne Marie | |
dc.date.accessioned | 2024-08-20T17:20:18Z | |
dc.date.available | 2024-08-20T17:20:18Z | |
dc.date.issued | 2024 | |
dc.identifier | no.ntnu:inspera:181457231:170813075 | |
dc.identifier.uri | https://hdl.handle.net/11250/3147230 | |
dc.description.abstract | Denne avhandlingen er et bidrag til prosjektet «Simultaneous Localisation and Mapping Project», der flere roboter kartlegger et innemiljø, nærmere bestemt en labyrint. Målet var å utvikle en databehandlingsmodul for et quadcopter som skal kartlegge området ovenfra. Modulen gir et posisjonsestimat for quadcopteret og inneholder et kamera for å behandle bilder av labyrinten. Den muliggjør også kommunikasjon med en server, slik at det er mulig å samarbeide med andre roboter og visualisere de bearbeidede dataene på et kart.
Modulen er basert på utviklingssettet nRF52840 fra Nordic Semiconductors, som styrer de tilkoblede sensorene og kommuniserer trådløst med serveren via Thread. Tidligere arbeid omfatter et avstandsmålingssystem der ultralydsensorer er festet til en koffert for å bestemme avstanden til omgivelsene. Det er også utviklet en kameramodul som tar bilder på kommando og trekker ut posisjonen til kantene på objektene den fanger opp. Robotkoden som styrer de andre robotene i prosjektet, var også tilgjengelig og ble brukt som grunnlag for å etablere kommunikasjon med serveren. Alle disse systemene styres av nRF52840.
Etter sammenslåingen av de to systemene, ble de tidligere algoritmene tilpasset, og ytelsen ble forbedret. En treghetsmålerenhet (IMU) ble integrert, og en algoritme for posisjonsestimering basert på sensordataene ble utviklet. Orienteringen ble bestemt ved hjelp av ulike metoder basert på gyroskopdataene fra IMU-enheten. Det utvidede Kalman-filteret behandlet avstandsdataene fra ultralydsensorene og orienteringen fra IMU-enheten for å gi et tilstandsestimat i forhold til utgangsposisjonen. Det resulterende systemet er delt inn i flere oppgaver som planlegges ved hjelp av FreeRTOS.
Testene analyserte nøyaktigheten til avstandssensorene og sammenlignet metodene som ble brukt til å bestemme modulens orientering. Systemets respons når det ble brukt til å kartlegge en enkel struktur, ble også analysert, først i et stasjonært miljø der posisjonen er gitt av serveren, deretter basert på posisjonsestimatet fra Kalman-filteret. Testene viste at det var mulig å lage et grovt kart over omgivelsene, og det ble bekreftet at kommunikasjonen mellom systemets oppgaver og serveren fungerte korrekt.
Begrensningene i systemet ble omgått under testene. Blant disse er kameraets lave prosesseringshastighet, noe som begrenser bevegelsesperiodene. Vinkelavhengigheten til ultralydsensorene førte til begrensninger med hensyn til den romlige strukturen i omgivelsene.
I fremtiden skal modulen festes til et quadcopter som flyr over en labyrint for å kartlegge den samtidig som den samarbeider med andre roboter i labyrinten.
Oppsummert kan man si at de planlagte målene er nådd. Ultralydsensorene ble kombinert i én modul med kameraet, en IMU ble lagt til, og kommunikasjon med serveren ble etablert. Testene viser at forbindelsen mellom de ulike komponentene i systemet fungerer, og at det er mulig å lage et grovt kart over et innendørs område. | |
dc.description.abstract | This thesis is a contribution to the ‘Simultaneous Localisation and Mapping Project’, in which several robots map an indoor environment, or more precisely a maze. The aim was to develop a data processing module for a quadcopter to map the area from above. The module provides a pose estimate for the quadcopter and contains a camera to process images of the maze. It also enables communication with a server so that collaboration with other robots is possible and the processed data can be visualised on a map.
The module is based on the nRF52840 development kit from Nordic Semiconductors, which controls the connected sensors and communicates wirelessly with the server via Thread. Previous work includes a distance measurement system in which ultrasonic sensors are attached to a case to determine the distance to the environment. A camera module has also been developed that takes pictures on command and extracts the position of the edges of the objects it captures. The robot code that controls the other robots in the project was also available and was used as a basis to establish communication with the server. All these systems are controlled by the nRF52840.
After merging the two systems, the previous algorithms were adapted and their performance was improved. An inertial measurement unit (IMU) was integrated and a position estimation algorithm based on the sensor data was developed. The orientation was determined using various methods based on the IMU's gyroscope data. The extended Kalman filter processed the distance data from the ultrasonic sensors and the orientation provided by the IMU to provide a state estimate relative to the initial position. The resulting system is divided into several tasks that are scheduled using FreeRTOS.
The tests analysed the accuracy of the distance sensors and compared the methods used to determine the module orientation. The response of the system when used to map a simple structure was also analysed, first in a stationary environment where the position is given by the server, then based on the pose estimate of the Kalman filter. The tests show that a rough map of the environment can be successfully created and the correct communication between the tasks of the system and the server was confirmed.
Limitations of the system were bypassed during the tests. These include the slow processing speed of the camera, which limits the movement periods. The angle dependency of the ultrasonic sensors led to limitations regarding the surrounding spatial structure.
In the future, the module will be attached to a quadcopter that flies over a maze to map it while co-operating with other robots within the maze.
To summarise, it can be said that the planned objectives have been achieved. The ultrasonic sensors were combined in a single module with the camera, an IMU was added and communication with the server was established. The tests show that the connection between the different components of the system works and that a rough map of an indoor area can be created. | |
dc.language | eng | |
dc.publisher | NTNU | |
dc.title | Quadcopter for indoor mapping | |
dc.type | Master thesis | |