![]() |
![]() |
Команда DOT.
|
|||||||
|
х | ||||||
|
|||||||
|
х | ||||||
|
|||||||
|
х | ||||||
|
Лига RoboCup Junior Soccer Open
|
|
![]() Видео
|
![]() Конструкция робота
|
![]() Программное обеспечение робота
|
![]() Стратегия и журнал
|
![]() Плакат
|
Видео |
Краткое описание элементной базы, электроники и особенностей конструкции Нажмите на изображение, чтобы увеличить его
Конструкция. Своим главным достижением мы считаем то, что все необходимое оборудование мы смогли уместить в роботе подходящем по размерам под регламент 21 года. Наш робот полностью помещается в цилиндр 20 на 20 сантиметров. Чтобы вес нашего робота не превышал 2300 грамм, при его разработке были использованы такие легкие материалы, как различные пластики и алюминий. Электроника. На наших роботах по 3 основные платы и 7 дополнительных плат. Основные платы включают главную плату, плату датчиков линии и плату повышающего преобразователя напряжения. Дополнительные платы включают в себя 4 платы датчиков наличия мяча, плату аккумулятора и платы, являющиеся коммуникационными для камеры и лидара. На главной плате располагается главный микроконтроллер stm32f407, 4 драйвера моторов и компоненты ввода-вывода информации, такие как кнопки, экран и bluetooth-модуль. В этом году используются более маленькие соленоиды, поэтому для сохранения силы удара, необходимо заряжать конденсаторы более высоким напряжением. Для этого был разработан модуль повышающего преобразователя напряжения, который способен заряжать конденсаторы вплоть до 250 вольт. Так же были разработаны новые платы датчиков линии. Наши старые роботы очень часто выезжали в аут, потому что плохо видели линию. Чтобы решить эту проблему было решено заменить датчики на другие, с более широким углом обзора, а также расположить их более грамотно. На старой плате датчики располагались крестом, а на новой - располагаются по окружности. Теперь наши роботы всегда хорошо видят линию, вне зависимости от того, где роботы расположены. |
Описание ПО робота (язык и среда программирования, перечень реализованных алгоритмов, описание структуры программы ) Большая часть алгоритмов написана на языке Python3.8 и выполняется на микрокомпьютере. Микроконтроллеры STM выполняют функции обработки данных с микрокомпьютера, таких как подача полученных скоростей на моторы. В каждый момент времени робот рассчитывает свое положение на поле с помощью камеры, ориентируясь по воротам. С помощью сверточной нейронной сети происходит определение роботов противника, а полученные значения уточняются с помощью анализа величины градиента. Для аппроксимации траекторий используется метод наименьших квадратов, с помощью которого достигается максимальная точность определения скоростей. Кроме того, для улучшения стабильности работы на больших скоростях применяется прогнозирование положений объектов на поле на небольшой промежуток времени вперед. |
Стратегия (как решается задача, заданная регламентом лиги) Основу стратегии составляет продвинутая система позиционирования роботов на поле. С ее помощью мы получаем возможность рассчитывать скорости объектов находящихся на поле, таких как роботы противника и мяч. Используя эти данные, роботы могут строить модель поля в реальном времени, и прогнозировать траектории движения отдельных объектов, что позволяет значительно увеличить точность работы всех алгоритмов. В процессе игры существует строгое разделение ролей роботов, которое тем не менее может меняться. Кроме того, в случае когда один из роботов выбывает из игры, оставшийся переключает модель поведения на гибридную, при которой оставшийся бот, не только отбивает мячи которые летят в ворота, но и, захватывая их, пытается забить в ворота противника. Также используется несколько методик для определния положения роботов противников, с помощью которых наши роботы закрывают корпусом мяч от противника. В обычной ситуации стандартное поведение нападающего состоит из нескольких этапов: перехват мяча, закрытие корпусом мяча от роботов противника, и обвод роботов противника по краю поля. Данная стратегия позволяет получить значительное превосходство против противников не умеющих определять роботов соперника. Стратегия же вратаря заключается в прогнозировании траектории мяча, и его перехвате, для последуюей передачи нападающему, что позволяет не терять мяча в сложных игровых ситациях. Кроме того, любая стратегия является адаптивной, то есть в любой момент игры для каждого робота выбирается одна из возможных моделей поведения, которая является приоритетной или наиболее эффективной на текущий момент. |
||
|
Плакат Нажмите на изображение, чтобы увеличить его |
Team DOT.
|
|||||||
|
х | ||||||
|
|||||||
|
х | ||||||
|
|||||||
|
х | ||||||
|
League RoboCup Junior Soccer Open
|
|
![]() Video
|
![]() Robot design
|
![]() Robot software
|
![]() Strategy and log
|
![]() Poster
|
Video |
Brief description of the element base, electronics and design features
Construct. We believe that our main achievement is that we were able to fit all the necessary equipment in a robot that was suitable in size under the 21-year regulations. Our robot fits completely into a 20 x 20 cm cylinder. So that the weight of our robot does not exceed 2300 grams, during its development such lightweight materials as various plastics and aluminum were used. Electronics. Our robots have 3 main boards and 7 additional boards. The main boards include a main board, a line sensor board, and a voltage boost converter board. Additional boards include 4 ball sensor boards, a battery board and communication boards for the camera and lidar. The main board contains the stm32f407 main microcontroller, 4 motor drivers and information input-output components such as buttons, a screen and a bluetooth module. Smaller solenoids are used this year, so the capacitors need to be charged with a higher voltage to maintain the impact force. For this, a voltage boost converter module was developed that is capable of charging capacitors up to 250 volts. Also new line sensor boards were developed. Our old robots very often went out, because they did not see the line well. To solve this problem, it was decided to replace the sensors with others, with a wider viewing angle, and also arrange them more correctly. On the old board, the sensors were located in a cross, and on the new one, they were located in a circle. Now our robots always see the line well, no matter where the robots are located. |
Description of the robot's software (programming language and environment, list of implemented algorithms, description of the program structure) Most of the algorithms are written in Python3.8 and run on a microcomputer. STM microcontrollers perform functions of processing data from the microcomputer, such as feeding the obtained speeds to motors. At each moment of time, the robot calculates its position on the field using the camera, guided by the goal. Using a convolutional neural network, the enemy robots are identified, and the obtained values are refined using the analysis of the gradient value. To approximate the trajectories, the method of least squares is used, with the help of which the maximum accuracy of determining the velocities is achieved. In addition, to improve the stability of work at high speeds, prediction of the position of objects on the field for a short period of time ahead is used. |
Strategy (how the task set by the league regulations is solved) The strategy is based on an advanced system for positioning robots on the field. With its help, we get the ability to calculate the speed of objects on the field, such as enemy robots and the ball. Using this data, robots can build a field model in real time, and predict the trajectories of individual objects, which can significantly increase the accuracy of all algorithms. During the game, there is a strict division of the roles of robots, which can nevertheless change. In addition, in the case when one of the robots leaves the game, the remaining one switches the behavior model to a hybrid one, in which the remaining bot not only hits the balls that fly into the goal, but also, capturing them, tries to score into the opponent's goal. Also, several techniques are used to determine the position of the opponents' robots, with the help of which our robots cover the ball from the enemy with their body. In a normal situation, the standard attacker's behavior consists of several stages: intercepting the ball, covering the ball from the opponent's robots with the body, and outflanking the opponent's robots at the edge of the field. This strategy allows you to get a significant superiority against opponents who do not know how to identify the opponent's robots. The goalkeeper's strategy is to predict the trajectory of the ball, and to intercept it, for the subsequent transfer to the attacker, which allows not to lose the ball in difficult game situations. In addition, any strategy is adaptive, that is, at any moment of the game, one of the possible behavior models is selected for each robot, which is the priority or most effective at the moment. |
||
|
Poster |