BĚLOHLÁVEK, J. Vytvoření nehomogenního hejna robotů [online]. Brno: Vysoké učení technické v Brně. Fakulta strojního inženýrství. 2024.
Bakalářská práce je primárně zaměřena na nahrazení originální řídicí jednotky sériově dodávaného robotu za softwarově otevřené řešení. Robot DJI Robomaster S1 slibuje možnost tvorby uživatelských programů, nicméně skutečnost je taková, že je nabízena pouze omezená skupina příkazů. Navíc celé hardwarové řešení je uzavřené. Proto se uživatelé více či méně úspěšně snaží proniknout do struktury tohoto zajímavého robotu. K dispozici je několik podobných projektů, které jsou omezené jak ve funkčnosti, tak ve kvalitě dokumentace. Celá práce dokumentuje nelehký úděl reverse inženýrů. Proto, s ohledem na rozsah práce, byl po vzájemné domluvě snížen počet cílů bakalářské práce. Panu Bělohlávkovi se podařilo odposlechnout, rozklíčovat a úspěšně zreplikovat na vlastním zařízení komunikaci mezi jednotlivými prvky robotu. Bylo tak dosaženo klíčového cíle bakalářské práce. Text práce by snesl vylepšení jak po formální, tak především obsahové stránce. Student nepravidelně konzultoval své pokroky. K samotnému textu práce jsem se neměl, kvůli časové tísni studenta, možnost vyjádřit. S ohledem na dosažené praktické výsledky hodnotím práci známkou B.
Kritérium | Známka | Body | Slovní hodnocení |
---|---|---|---|
Splnění požadavků a cílů zadání | C | ||
Postup a rozsah řešení, adekvátnost použitých metod | B | ||
Vlastní přínos a originalita | B | ||
Schopnost interpretovat dosažené výsledky a vyvozovat z nich závěry | B | ||
Využitelnost výsledků v praxi nebo teorii | B | ||
Logické uspořádání práce a formální náležitosti | B | ||
Grafická, stylistická úprava a pravopis | B | ||
Práce s literaturou včetně citací | B | ||
Samostatnost studenta při zpracování tématu | B |
The work presented by Mr. Jan Bělohlávek concerns the control of the DJI Robomaster robot, a 4 mecanum wheels ground robot equipped with various sensors (camera, etc.). This robot is totally controlled by DJI proprietary software, forming a closed eco-system. The essential control element of the robot is the Intelligent Controller , using Android system to drive the CAN bus on which all the sensors and actuators are installed. To send commands to this robot, DJI provides a proprietary interface application for a computer or phone. The goal defined in this project is to be able to control multiple robots in a swarm, but the application supplied by DJI does not meet this objective. After researching equivalent projects, none of which met the objective (but parts of which would be very useful for understanding how DJI's interface worked). Mr. Bělohlávek determined that the optimal choice would be to replace the “Intelligent Controller” on the robot with a dual-core ESP32 microcontroller from Expressif Systems, enabling control of the CAN bus replacing de facto the “Intelligent Controller”. To determine how to program the ESP32, an analysis of equivalent projects identified key elements on the protocol of the CAN bus (multiple frames defining a unique message, CRC, etc.). However, an in-depth reverse-engineering study was required to analyze CAN bus frames. To this end, an interface was implemented to capture CAN bus frames and a selection of the right frames allowed to determine the key elements of the implemented protocol. It's clear that the work carried out analyzed the problem and chose the appropriate solutions. The search for identical projects enabled the student to find parts of the documentation for the protocol used, which did not exist at the outset. By implementing a CAN bus frame capture system and using reverse-engineering, it allowed the understanding of a large part of the protocol and allowing to reprogram the ESP32 to control the CAN bus. The chosen approach is the right one for this type of project. The only downside to the report is that there's no indication of which parts of the protocol have been implemented, or whether there are any limitations in use. Nevertheless, as reverse engineering is always time-consuming, Mr. Bělohlávek undoubtedly put a lot of effort into the project and probably didn't have enough time to carry out these testing operations.
Kritérium | Známka | Body | Slovní hodnocení |
---|---|---|---|
Splnění požadavků a cílů zadání | A | ||
Postup a rozsah řešení, adekvátnost použitých metod | A | ||
Vlastní přínos a originalita | B | ||
Schopnost interpretovat dosaž. výsledky a vyvozovat z nich závěry | B | ||
Využitelnost výsledků v praxi nebo teorii | A | ||
Logické uspořádání práce a formální náležitosti | A | ||
Grafická, stylistická úprava a pravopis | B | ||
Práce s literaturou včetně citací | A |
eVSKP id 153997