Masinnägemise kasutamine lahingurobotil

Kuupäev

2023-05-11

Väljaande pealkiri

Väljaande ISSN

Köite pealkiri

Kirjastaja

Tallinna Tehnikakõrgkool

Kokkuvõte

Käesoleva lõputöö projekti käigus viidi antud ülesande lahendamiseks läbi rida teste ja katsetusi. Esialgu analüüsiti võistlusreegleid, milles robot osaleks, ning valiti autonoomse juhtimissüsteemi paigaldamiseks sobiv platvorm. Projekti käigus projekteeriti ja arendati välja spetsiaalne moodul, mis edastab saatja ja arvuti vahel USB-ühendust kasutades PPM-signaali. Lisaks muudeti kaamerat, et parandada roboti tuvastamise kvaliteeti, paigaldades sellele lisa valgustuse, mis valgustas tuvastatud objekti, muutes tuvastamise lihtsamaks. Pärast tuvastatava objekti valimist tunnistati reflektor parimaks vahendiks tuvastatavuse uuringu käigus, kasutades lisa valgustusega kaamerat. Järgmise sammuna valiti tuvastatava objekti kuju ning pärast kolme võimaluse kaalumist valiti kolmnurkne kuju, kuna selle nurga kõikumine oli minimaalne. Vaenlase tuvastamiseks kasutati videovoos liikumise tuvastamise algoritmi, mis käivitub ainult siis, kui uurimistöös valminud robot on tuvastatud. Vale tuvastamise vältimiseks eemaldati see robot liikumise tuvastamise piirkonnast. Kogu programm kirjutati Pythonis, mis valiti selle lihtsuse ja autori kogemuse tõttu selles keeles programmeerimisel. Programmi kood koosneb enam kui 1000 koodi reast, mis ei hõlma mitte ainult programmi ennast, vaid ka testimise, andmete kogumise ja andmeedastuse skripte. Pärast koodi kirjutamist viidi roboti reaktsiooni kiiruse ja liikumise kontrollimiseks läbi arvukaid teste, mis on leitavad allalaaditavatest failidest lisades. Lõpptulemused näitavad, et robot saavutas edukalt projekti eesmärgi luua masinnägemise abil juhitav robot, mis suudab liikuda ja reageerida kiiremini kui inimpiloot. Katsete käigus oli roboti reaktsioonikiirus viis korda kiirem kui inimese keskmine reaktsioonikiirus, mistõttu oli projekt edukas.


In the course of this final thesis project, a series of tests and experiments were carried out in order to solve this problem. First, the rules of the competition in which the robot would participate were analysed and a suitable platform for the installation of the autonomous control system was selected. The project involved the design and development of a special module that transmits a PPM signal between a transmitter and a computer using a USB connection. In addition, the camera was modified to improve the quality of the robot's detection by installing an additional light that illuminated the detected object, making detection easier. After selecting the object to be detected, the reflector was identified as the best tool in the detectability study using an additional illuminated camera. The next step was to select the shape of the object to be detected and after considering three options, a triangular shape was chosen as it had the minimum angular variation. To detect the enemy, a motion detection algorithm was used in the video stream, which is triggered only when the robot in the study is detected. In order to avoid false detection, this robot was removed from the motion detection area. The entire program was written in Python, chosen for its simplicity and the author's experience in programming in this language. The code of the program consists of more than 1000 lines of code, including not only the program itself, but also scripts for testing, data collection and data transmission. After the code was written, numerous tests were performed to check the robot's reaction speed and movements, which can be found in the downloadable files in the appendices. The final results demonstrate that the robot successfully achieved the project's goal of creating a computer vision-driven robot that can move and react faster than a human pilot. During the tests, the robot's reaction speed was five times faster than the average human reaction speed, making the project a success.

Kirjeldus

Märksõnad

Mehaanika::Robotitehnika::Masinnägemine

Viide