The Department of Automation and Applied Informatics of the BUTE organizes the RobonAUT designing and engineering competition in each year since 2012. The task of the race is to design and build an autonomous robot car, that follows a path not detailed in advance, and can perform different objectives. As my final thesis I’m upgrading a car like this with features that are not included in the race’s objectives. My task is to develop further the controller’s hardware and software, including the design of the necessary new hardware and the implementation of the software.
The aim of the new line scanner is to improve the ability of following a path marked by a black line. For this task, I designed a dual line sensor (including 2x24 individual sensors), using my earlier experiences. After the production, I improved its resolution by different filters and algorithms, reaching a resolution of half mm in determining the midpoint of the line, one degree in determining the angle, and its update frequency can be up to 4 kHz. For measuring and preprocessing the signals – that includes high frequencies – I use a Spartan 6 FPGA. The post-processing is done by the car’s main processor, an ARM Cortex-M4.
My main task was determining the location of the car. I completed it by using inertial localization (encoder + gyroscope). Then I compared the precision of the sensors and different models by measurements, and proposed solutions for improvements. With the combination of the line following ability and inertial localization I programmed the path recording function. The car transmits the recorded data for the PC via Bluetooth, and my own PC software displays this path graphically. The data can be saved and can be downloaded to the car anytime. By this map file, the car can repeat the same path with minimal inaccuracy without using the line sensors. The path also can be drawn by external coordinates. These implemented functions work well in short and medium ranged distances, it fulfills the requirements.
Finally I collected the advantages of these new, extra-abilities and what can we benefit from them during the race/show. I also listed some further development ideas.