ГБОУ Президентский физико-математический лицей № 000


Центр робототехники
RoboCup Russia Open 2018
RoboCupJunior Soccer Lightweight
NEON
Инженерный журнал
Дмитриев Владимир
Саськов Лев
Волков Михаил
Руководитель:


Санкт-Петербург
2018 г.
Введение
Предыстория
Наша история очень коротка и не интересна, но я думаю, что в будущем мы оставим значительный след в истории Мирового автономного футбола RoboCup. Мы все сейчас учимся в школах без углублённого изучения Английского языка, поэтому мы не очень хорошо знаем Английский язык.
Наши успехи
С новым концептом футболистов мы успели поучаствовать только в RoboCupJunior Soccer Lightweight на RoboCup Russia Open 2018 (14-17 Апреля), где мы одержали победу в всех матчах, что позволило нам занять первое место в России.
Опыт участников
Дмитриев Владимир: 3 место в RoboCupJunior Soccer Lightweight на RoboCup Russia Open 2017, 1 место в RoboCupJunior Soccer Lightweight на RoboCup Russia Open 2018.
Саськов Лев: 1 место в RoboCupJunior Soccer Lightweight на Открытых состязаниях Санкт-Петербурга по робототехнике 2018, 1 место в RoboCupJunior Soccer Lightweight на RoboCup Russia Open 2018.
Волков Михаил: 1 место в RoboCupJunior OnStage Secondary на RoboCup Russia Open 2017,
1 место в RoboCupJunior Soccer Lightweight на RoboCup Russia Open 2018.
Княжицкий Роман: 1 место в RoboCupJunior Soccer Lightweight на RoboCup Russia Open 2018.

Дмитриев Владимир – капитан, программист логики и тактики роботов, специалист по комплексному решению проблем. Написал часть программы, в которой роботы отъезжают от линии, следят за мячом, а также позиционируются на поле.

Саськов Лев – специалист по прототипированию, электронике специалист по 3D моделированию, механике. Создал все 3д модели
для роботов. Для реализации 3д моделей использовал3дпринтер, фрезерный станок с ЧПУ, лазерный станок и токарный станок.

Волков Михаил – специалист по 3D моделированию, механике. Создал материнскую плату и плату датчиков в электронном виде при помощи программы DipTrace. Реализовал эти платы при помощи травления и пайки.

Княжицкий Роман – программист, работающий с камерой PIXY. Написал код, с помощью которого роботы могли видеть ворота противника, определять на каком расстоянии робот находится от ворот противника, а также где именно находиться вратарь противника.
Наша команда на Открытых состязаниях Санкт-Петербурга по робототехнике 2018 (3 человека слева (Слева направо: Лев, Миша, Вова))

Наши роботы

Оборудование и их характеристики
МикроконтроллерМы использовали Robotdyn Atmega 2560 pro и Atmega 328P. Atmega 2560 является главным мозгом наших роботов, а Atmega 328P служат для чтения трёх лазерных датчиков CJVL53LOXV2.
Atmega2560, как и все его аналоги: Atmega2560 rev3, Atmega2560 16au, Atmega320 «Про Мини», Atmegach340g, Atmegach340g Pro Mini, Atmega640 Pro Mini, Atmega168 20au, Atmega328, Atmega2560 16au Pro Mini, Atmegar3 Pro Mini, Atmega168 20au «Про Мини» представляет собой 8-разрядный микроконтроллер низкой мощности, изготовленный на базе ядра типа AVR с архитектурой типа RISC. Он способен выполнять большое количество различных инструкций одновременно. Именно поэтому его производительность может достигать 1 миллиона операций за 1 секунду. Его тактовая частота при этом равна 1 мегагерцу.


Мы использовали 4 мотора Polulu 31:1 Metal Gearmotor 20Dx41L mm 12V CB. Они работают от 12 вольт, которые мы подаём с аккумулятора с регулировкой шим сигналом.
Рабочее напряжение: 12 В
Передаточное отношение: 31:1
Скорость без нагрузки: 450 об/мин
Вес: 44 гр

Мы использовали омни колёса 50mm Omni Wheel - 4mm Bore Иранского производства.
Диаметр – 50 мм
Диаметр валиков – 4 мм
Материал колеса - Сталь
Материал маленьких колёсиков - Алюминий
Материал валиков - Резина
Датчики
Мы использовали несколько типов датчиков.

- Дальномеры
В качестве дальномеров мы использовали лазерные датчики CJVL53LOXV2.
Минимальное расстояние – 10 мм
Максимальное расстояние – 2 м
Питание – 5 Вольт
Протокол передачи данных – I2C



- Датчики линии
В качестве датчиков, которые видят линию, мы использовали самодельные датчики линии основанные на qrd1114. На плате датчиков находятся 16 таких датчиков (по 4 с каждой стороны), что помогает в 99% случаях видеть линию.
Особенности - самодельная плата, этапы создания, которые вы можете посмотреть на странице
Питание – 5 Вольт
Протокол передачи данных – Аналоговый
Режим работы – не контактный, работают на высоте до 3 сантиметров

- Инфракрасные датчики мяча
В качестве датчика, который видит мяч, мы использовали HiTechnic NXT IRSeeker V2.
Особенности - Датчик имеет 5 маленьких инфракрасных датчиков, выдаёт массив из 6 значений: силы сигналов на каждом из датчиков, а также направление сигнала (от 1 до 9)
Протокол передачи данных – I2C

- Компас
В качестве компаса мы использовали SparkFun 9DoF Razor IMU M0,
Особенности: датчик имеет 3-х позиционный гироскоп и акселерометр,
магнитометр, датчик давления и датчик температуры, но мы
используем только компас.
Протокол передачи данных – Serial
Питание – 3.3 V

В качестве аккумуляторы мы использовали 3-ёх баночный аккумулятор nano-tech 2200mah 3 cell 11.1v
Тип – Литий-полимерный
Ёмкость – 2200 mah
Количество банок - 3
Максимальное выходное напряжение - 12.5 v


Материнскую плату мы спроектировали и создали своими руками. На плате имеются: Atmega 328p, которая паяется на плату (используется для чтения трёх лазерных датчиков), RobotDyn mega 2560 pro, которая одевается на главную плату (исполняет всю логику, которую мы прописали), для каждого из 4 моторов распаян по одному драйверу drv8870, два понижающих стабилизатора питания: 12-9 в и 9-5 в (9 вольт идёт на питание Atmega 2560 и Atmega 328P, а 5 вольт идёт на питание всех датчиков), а также реле, с помощью которого мы пинаем соленоидом

Мы использовали drv8870, которые мы распаяли на плате датчиков.
Количество каналов – 1
Максимальное рабочее напряжение – 45 В
Максимальный ток– 3.7 А
Пинающий механизм
- Реле
Соленоид
Программное обеспечение
- Arduino IDE - программирование Solidworks и Autodesk Inventor - 3D моделирование Layout 6 и DipTrace – моделирование плат ArtCam – для фрезеровки изделий Cura – для подготовки 3D модели к печати RW Works – для лазерной резки
Создание плат

Step 1 Подготовка текстолита (резка и чистка).

Step 2 Фрезеровка текстолита на фрезерном станке (сверловка отверстий и фрезеровка контура).


Step 3Нанесение фоторезиста на текстолит при помощи ламинатора.


Step 4 Засвечивание маски фоторезистре при помощи люминесцентной лампы.
Step 5 Травление в хлорном железе, клепание при помощи наковальни и молоточка, лужение при помощи сплава Розе.

Step 6 Пайка всех элементов на плату.
Стратегия
Нападающий
Главная цель нападающего – это забить мяч. Робот ищет мяч, всегда смотря в сторону ворот противника. После нахождения мяча робот смотрит, где он находится на поле в этот самый момент. Нападающий узнаёт свою позицию при помощи лазерных датчиков, расположенных справа, слева и сзади, камеры, а также при помощи программного позиционирования (программное позиционирование – это воображаемая координатная плоскость с осями x и y, находящаяся в памяти микроконтроллера, при каждом перемещении робот изменяет своё положение на этой плоскости.) После этого робот набирает свою максимальную скорость и устремляется в сторону ворот противника для того, чтобы забить в него мяч, что приводит к голу. Если робот узнаёт при помощи камеры, что в воротах стоит вратарь противника, то он бьёт в самый дальний угол относительно вратаря при помощи соленоида. Датчики линии помогают роботу не выезжать за линию аута.
Вратарь
Главная цель вратаря – это не допустить гола в свои ворота. Робот всегда перемещается в штрафной зоне, не выезжая за её пределы благодаря датчикам линий. Робот перемещается влево вправо в зависимости от расположения мяча на поле. При опасном приближении мяча к воротам, роботы выезжает на него, чтобы отбить мяч, после чего возвращается обратно в ворота. Если мяч долгое время стоит на чёрной метке, то он пытается забить забить гол путём выезда на мяч и удара его соленоидом.
Работа с другими командами
Мы консультировались у нескольких команд, которые помогали решить некоторые вопросы с железом, а именно: Kepler (Команда занявшая первое место в младшей возвратной категории в футболе на Robocup Russia Open 2017, а также участвовавшая на мировом этапе в 2017 году в Японии), Uran 239 (Команда занявшая первое место в старшей возвратной категории в футболе на Robocup Russia Open 2017, а также участвовавшая на мировом этапе в 2017 году в Японии), Samovar (Команда занявшая первое место в RoboCupJunior Rescue Maze на Robocup Russia Open 2017, а также участвовавшая на мировом этапе в 2017 году в Японии) и также с командой из Ирана «Sadrarobot6», которая участвовала в мировом этапе в Японии, сейчас это команда VCC.
Планы на будущее


