Инженерный тур. 2 этап
Задачи второго этапа являются декомпозицией задач заключительного этапа. Их решение позволяет ознакомиться с основными технологиями диагностики судна с помощью подводных аппаратов и мультисенсорных зондов, которым и посвящен заключительный этап.
Участники команды при решении задач подробнее знакомятся со своими ролями и тем, что им предстоит делать в рамках заключительного этапа:
- программисту — программировать в MUR IDE движение робота, регуляторы, алгоритмы компьютерного зрения;
- электронщику — выполнять пайку и электромонтаж при подготовке подводного аппарата к выполнению миссии;
- программисту микроконтроллеров — программировать в Arduino IDE и настраивать работу микроконтроллера;
- конструктору — проектировать в САПР, разрабатывать чертежи, работать с формообразующим инструментом и подготавливать конструкторскую документацию.
Во втором этапе представленный пакет задач состоит из индивидуальных задач, проверяющих личные навыки участников команды согласно их компетенциям (программирование роботов в симуляторе, программирование микроконтроллеров, электроника, конструирование), и командной задачи на разработку коммерческого предложения, которая требует совместной работы.
Участники должны наладить систему планирования и коммуникации внутри команды, правильно распределять задачи, согласно своим ролям и возможностям.
- Комплект задач состоит из 5 задач.
- Общая сумма баллов: 300 баллов.
Компетенции, необходимые для решения задач второго этапа:
- программирование Python,
- программирование в симуляторе MUR IDE,
- компьютерное зрение,
- регуляторы,
- Arduino,
- Tinkercad,
- схемотехника,
- проектирование электрических плат,
- работа с ГОСТ,
- проектирование в САПР,
- разработка конструкторской документации.
Комплект индивидуальных задач состоит из четырех задач. Три задания размещены на платформе Яндекс.Контест и предполагают ручную проверку.
Задача для программиста компьютерного зрения размещена на платформе MUR Contest. Данное задание оценивается автоматически.
Индивидуальные задачи второго этапа инженерного тура открыты для решения. Соревнование доступно на платформе Яндекс.Контест: https://contest.yandex.ru/contest/69892/enter/.
Для проведения комплекса работ по исследованию дна морского судна компания N решила использовать телеуправляемый необитаемый подводный аппарат (ТНПА). Однако установленная на нем аналоговая камера не подходила под задачи исследований, поэтому инженерами было принято решение заменить эту камеру на цифровую, а заодно заменить сервопривод.
Задача участников: спроектировать герметичный корпус камеры, исходя из заданных характеристик используемых материалов и компонентов, разработать крепление камеры к сервоприводу.
Герметичный корпус состоит:
- из акриловой трубы (гильзы);
- из крышек;
- из системы крепления герметичной камеры к раме подводного аппарата (отверстия, крепежные элементы, дополнительные детали);
- из узла крепления камеры к сервоприводу и всей конструкции внутри корпуса;
- из устройства герметичного вывода кабеля через крышку наружу.
Для разработки прототипа участникам предложены следующие компоненты:
- Материал для гильзы: акриловая труба из ассортимента: https://disk.yandex.ru/i/TDfQpo4ZaOdq2w.
- Цифровая камера, 1 шт.: https://clck.ru/3Fre4W.
- Сервопривод, 1 шт.: https://hitecrcd.com/hs-85bb-premium-micro-servo/.
- Материал для крышек: алюминиевый пруток АМг3 (ГОСТ 4784-97) на выбор из сортамента \(\varnothing\) 45–95 мм с шагом диаметра 10 мм.
- Набор необходимых уплотнительных колец согласно ГОСТ 9833-73: https://files.stroyinf.ru/Index2/1/4294820/4294820621.htm.
Характеристики камеры
- HBVCAM-1716-130.
- Габариты: \(38 \times 38 \times 31\) мм.
- Угол обзора 130°.
Характеристики сервопривода
- HS-85BB.
- Габариты: \(39 \times 25{,}5 \times 13\) мм.
- На валу установлена крестовина.
Требования к конструкции
- Для герметизации корпуса необходимо использовать уплотнительное кольцо сечением 2,5 мм. Минимально допустимая толщина стенок гильзы — 3 мм.
Герметичная камера должна крепиться к листовому материалу толщиной 10 мм. Предполагается, что герметичная камера должна устанавливаться в паз в листовой панели так, как это показано на рис. 1.3.
Рис. 1.3. Установка герметичной камеры- Камера должна свободно проворачиваться внутри гильзы на 360°.
- Должен быть предусмотрен способ крепления крышек к гильзе, препятствующий осевому смещению относительно друг друга. Это необходимо для предотвращения разгерметизации корпуса камеры из-за возникновения разности давления внутри и снаружи корпуса.
- Должен быть предусмотрен способ герметичного вывода кабеля камеры через крышку наружу, диаметр кабеля — 5,5 мм.
- Для крепления камеры к сервоприводу нужно использовать крестовину, указанную в чертеже сервопривода.
- Остальные требования к конструкции указаны в листе оценки. Участники должны внимательно ознакомиться с листом оценки перед проектированием.
Лист оценки: https://disk.yandex.ru/i/_MomKsinWvFXXA.
Результатом работы является:
- модель корпуса герметичной камеры с внутренним наполнением (камерой, сервоприводом) и ответной частью в виде листового материала толщиной 10 мм с пазом под камеру;
- сборочный чертеж (без изображения ответной части);
- чертеж гильзы;
- чертежи крышек;
- чертежи дополнительных деталей, если такие имеются;
- спецификация;
- пояснительная записка.
- Решение задачи конструктора должно соответствовать критериям, представленным в листе оценки.
- Чертежи необходимо выполнять согласно ГОСТ 2.109-73: https://files.stroyinf.ru/Data2/1/4294852/4294852138.pdf.
- Спецификация и пояснительная записка должны быть выполнены согласно ГОСТ Р 2.106-2019: https://files.stroyinf.ru/Data/708/70838.pdf.
- Оценка сборочного чертежа и спецификации производится по упрощенным критериям, так что ориентироваться прежде всего необходимо на лист оценки.
Для пояснительной записки предлагается упрощенный вариант содержания:
- введение (с указанием, на основании каких документов разработан проект);
- наименование и область применения проектируемого изделия;
- описание и обоснование способа крепления камеры с сервоприводом к крышке и способа крепления герметичной камеры к листовой панели;
- расчеты для уплотнительных колец;
- обоснование выбора допусков согласно ГОСТ;
- описание способа герметичного вывода кабеля из корпуса;
- планируемый способ изготовления каждой детали (кроме стандартных изделий).
Решение задачи должно быть предоставлено в виде двух следующих файлов:
pdf-файл с чертежами гильзы, крышек, дополнительных деталей (если такие имеются), сборочным чертежом, спецификацией и пояснительной запиской;step-файл с моделью.
В качестве возможного варианта решения приводится работа команды, набравшая максимальное количество баллов (47 баллов из 50 баллов):
Для выполнения задания необходимо:
- Скачать и установить среду разработки MUR IDE для программирования виртуального автономного подводного робота: https://murproject.com/#download.
- После установки на рабочем столе должен появиться ярлык MUR IDE. Запустить MUR IDE.
Для начала работы в симуляторе перевести режим работы IDE в
Local. Для этого следует нажать на кнопку с иконкой ракеты и надписью Remote в левом верхнем углу. Цвет кнопки станет синим и надпись изменится на Local.
Рис. 1.4.Запустить симулятор нажатием кнопки с изображением жука в правом верхнем углу. Откроется окно симулятора с черным экраном.
Рис. 1.5.- Скачать сцену по ссылке. Можно разместить ее в любом удобном каталоге.
- В запущенном симуляторе перейти в меню Scene Open. В появившемся диалоговом окне выбрать сцену.
- Все готово, можно начать программировать виртуальный аппарат на языке программирования Python.
- В качестве решения задачи необходимо отправить файл с кодом в формате
*.py. Для этого в меню следует выбрать File File save as.
При проведении работ по осмотру дна морских судов и мелкому ремонту все чаще компании прибегают к помощи подводных аппаратов.
Необходимо выполнить работы по диагностике состояния судна, запрограммировав аппарат на обнаружение повреждений и прочих объектов согласно заданию.
В сцене представлен корабль, корпус которого окрашен в красный и серый цвета. Для удобства ориентирования вокруг корабля на дне нарисована фиолетовая полоса. Начальное положение аппарата: напротив кормы корабля у винтов.
Дефектоскопия (10 баллов).
- На правом борту судна расположены повреждения оранжевого цвета. Необходимо определить порядковый номер самого крупного повреждения.
- Порядковый номер повреждения определен. Это означает, что аппарат выстрелил в розовую мишень (находится в конце ряда повреждений) количеством торпед, равным порядковому номеру мишени.
Рис. 1.7. ДефектоскопияОчистка винтов (10 баллов).
- На корме расположены два рулевых винта серого цвета. Одна из лопастей каждого винта покрылась обрастаниями (такая лопасть будет окрашена в зеленый цвет).
- Необходимо выполнить очистку винтов от обрастаний.
- Винт очищен. Это означает, что аппарат коснулся зеленой лопасти своей передней частью (колбой).
- За касание чистой лопасти (лопасть серого цвета) предусмотрен штраф. Подробнее — в разделе «Критерии оценивания».
- При проверке данной задачи при успешном касании зеленой лопасти ее цвет сменится на серый.
Рис. 1.8. Очистка винтовОпределение размеров трещины (15 баллов).
- На левом борту судна обнаружена трещина белого цвета.
- Над трещиной расположен желтый калибровочный квадрат с известной длиной стороны одна единица.
- Необходимо выяснить, сколько единиц составляет длина трещины и указать ее.
Рис. 1.9. Определение размеров трещины- Для указания длины трещины рядом расположены четыре корзины зеленого цвета. Рядом с каждой корзиной указана буква, обозначающая разряд. Размер необходимо закодировать с применением двоичного кода, сбросив маркеры (см. таблицу кодировки 1.1).
- Отсутствие маркера в корзине приравнивается к 0.
- Наличие маркера в корзине приравнивается к 1.
- Длина трещины может меняться от 1 до 9 и всегда является целым числом.
Таблица: Таблица кодировки Длина Корзины A B C D 0 0 0 0 0 1 0 0 0 1 2 0 0 1 0 3 0 0 1 1 4 0 1 0 0 5 0 1 0 1 6 0 1 1 0 7 0 1 1 1 8 1 0 0 0 9 1 0 0 1 Исследование корпуса (10 баллов).
Необходимо исследовать дно корабля под килем. Задание выполнено верно, если аппарат зашел со стороны винтов и вышел со стороны носовой части.
Вход в коридор со стороны кормы обозначен оранжевой стрелкой.
Рис. 1.10. Исследование корпусаВсплытие (10 баллов).
После завершения миссии аппарат должен всплыть со стороны носовой части над красным кругом.
Рис. 1.11. Область всплытия
Требования к выполнению задания
- Время выполнения задания (попытка) — не более 5 мин.
- Попытка завершается в тот момент, как робот всплыл на поверхность. Всплытие на поверхность означает, что своей верхней частью он пересек поверхность воды. В этом случае время останавливается, и в зачет идут те баллы, которые робот успел набрать до всплытия.
- Попытка завершается, если истекло максимальное время на попытку (4 мин). В этом случае время выполнения попытки устанавливается 4 мин, и в зачет идут те баллы, которые робот успел набрать до остановки времени.
- Попытка останавливается в случае завершения кода.
Баллы за прохождение начисляются следующим образом.
| Задача | Критерий | Балл |
|---|---|---|
| 1 | Определен самый большой дефект (количество выстрелов в мишень совпадает с порядковым номером объекта) | \(10\) |
| 2 | Винты очищены (по \(5\) за каждый) | 10 |
| 3 | Определен размер трещины (\(15\) — верно, \(5\) — с ошибкой \(\pm 1\)) | \(15\) |
| 4 | Обследование выполнено | \(10\) |
| 5 | Всплытие | \(5\) |
| 6 | Штраф за маркер вне корзины | \(-2\) |
| 7 | Штраф за снаряд, выпущенный не в мишень | \(-2\) |
| 8 | Штраф за касание неверной (серой) лопасти | \(-2\) |
Подготовка и тестирование
Для тестирования участникам доступны 3 сцены. Контрольные сцены отличаются от тестовых. Скачать сцены для тестирования можно по ссылке: https://disk.yandex.ru/d/-OunV-JWsM1zmw/test_scenes.
Размеры трещин в каждой схеме:
scene_1.xml— 9;scene_2.xml— 5;scene_3.xml— 3.
Что может меняться
- Размер квадратов-повреждений.
- Длина трещины.
- Расположение обрастаний на винтах.
- Центр трещины всегда совпадает с центром калибровочного квадрата. При этом положение калибровочного квадрата не меняется.
Примечание
Положение корзин не меняется.
Порядок оценки решений и работа системы автоматической проверки
- Решением задачи является файл в формате
*.py, который загружается на платформу MUR Contest и оценивается автоматически. - В MUR contest будут доступны два соревнования: НТО (тестовые) и НТО (финальные).
- В НТО (тестовые) можно выполнять проверку своего решения на тестовых сценах и получать результаты. Количество попыток: 10.
- В НТО (финальные) загружается итоговое решение. Это решение проверяется на контрольных сценах после завершения приема работ.
- С инструкциями по работе с системой можно ознакомиться в личном кабинете участника внутри соревнования.
- Участники могут заменять файл итоговой программы до завершения приема работ.
- Заключительная проверка выполняется после завершения приема работ второго этапа. Проверку проходит последний файл, присланный участником.
- Задача проверяются на трех сценах, которые отличаются от предоставленных.
- Сцены различаются расположением объектов, их цветом.
- В зачет идет худший результат из трех попыток.
- Все работы проверяются на плагиат.
Ссылка на вариант решения от разработчиков c комментариями:
Для определения глубины отверстия в конструкциях, установленных под водой, для ТНПА планируется реализовать специальный модуль. Для тестирования и отладки предполагаемого функционала была собрана схема устройства в среде SimulIDE.
Модуль представляет собой герметичное устройство на основе Arduino Nano с ультразвуковым датчиком и сервомотором.
Все данные передаются на пульт управления на основе Arduino Uno с подключенными джойстиком, кнопкой, дисплеем, RGB-светодиодом.
Модель устройства в SimulIDE можно скачать по ссылке: https://disk.yandex.ru/d/G4f61QeTB0YogA.
Устройство должно функционировать следующим образом:
Движение устройства (вправо/влево):
- джойстик вперед — поворот сервы до положения 0;
- джойстик назад — поворот сервы до положения 180;
- при достижении крайних значений сервомотор останавливается.
Нажатие кнопки — регистрация расстояния до препятствия:
- 1 нажатие — сообщение START появляется на второй секунде;
- 2 нажатие — фиксация S1;
- 3 нажатие — фиксация S2.
- Модуль измеряет расстояния до внешней стенки полости, фиксирует значение S1 и измеряет расстояние до внутренней стенки полости, фиксирует значение S2. Далее определяется глубина полости (S2 – S1).
- Расстояния и итоговая глубина выводятся на дисплей.
- Если расстояние в пределах нормы, то RGB-светодиод светится зеленым.
- Если расстояние ниже нормы, то RGB-светодиод светится красным.
- Если расстояние выше нормы, то RGB-светодиод светится желтым.
- При следующем нажатии на кнопку цикл измерений повторяется заново.
Примечания
Нормальным считается измерение в пределах 30–70 см.
Допустимая погрешность измерений УЗ-датчика: \(\pm 3\) см.
Диапазон значений УЗ-датчика
Изменение расстояния моделируется в SimulIDE при помощи источника питания.
Симулятор электрических схем SimulIDE
Скачать SimulIDE версия 1.1.0: https://simulide.com/p/downloads/.
В SimulIDE для работы с платами Arduino необходимо указать путь к ArduinoIDE. Для этого нужно скачать ArduinoIDE версии ниже 2.0. Например, версию 1.8.19: https://www.arduino.cc/en/software.
Далее в SimulIDE необходимо открыть схему, создать файл и сохранить его, а затем открыть настройки компилятора.
В настройках компилятора указать путь к распакованному архиву Arduino IDE.

В случае возникновения сложностей обратитесь к документации: https://simulide.com/p/simulidekb/.
Примечания
Для того чтобы писать прошивку для двух микроконтроллеров необходимо, чтобы *.ino файлы были в отдельных папках.
Чтобы загрузить прошивку на конкретный микроконтроллер, нужно сначала кликнуть по нему правой кнопкой мыши, а затем выбрать его как основной.
| № п/п | Критерий | Пояснение | Балл |
|---|---|---|---|
| 1 | Джойстик работает согласно условию | 10 | |
| 2 | Кнопка работает согласно условию | Для каждого нажатия фиксированное действие | 10 |
| 3 | Данные выводятся на дисплей | Соответствует условию — 10 баллов. Частично соответствует — 5 баллов. Не соответствует — 0 баллов |
10 |
| 4 | Расстояние определено корректно | Расстояние выведено на дисплей к установленной погрешностью: +5 баллов. Глубина определена с верной погрешностью: +5 баллов. Расстояние и глубина определены, но погрешность измерений от 2 до 4 см: +3 балла |
10 |
| 5 | RGB-светодиод работает согласно условию | Соответствует условию — 10 баллов. Частично соответствует — 5 баллов. Не соответствует — 0 баллов |
10 |
| ИТОГО | 50 | ||
Решением задачи является архив с кодом для двух устройств.
Ссылка на вариант решения от разработчиков с комментариями: https://disk.yandex.ru/d/LH6Mm0qw73y3Og.
Участникам предложен проект платы модуля управления моторами для подводного аппарата. К сожалению, принципиальная схема устройства была утеряна.
Задача: по предоставленному проекту печатной платы и слоев дорожек разработать принципиальную схему устройства.
| Comment | Value | Designator | Footprint | Quantity |
|---|---|---|---|---|
| 100n, X7R, 50V | 100n | C1 | C0603 | 1 |
| EEEFK1E101SP | 100\(\mu\) | C2, C5, C9, C13 | SMD, 6.3\(\times\)5.8mm | 4 |
| 22\(\mu\)F, X5R, 25V | 22\(\mu\) | C3 | C1210 | 1 |
| 47uF, X5R, 16V | 47u | C4 | C1210 | 1 |
| 220n, X7R, 50V | 220n | C6, C10, C14 | C0603 | 3 |
| 10n, X7R, 50V | 10n | C7, C11, C15 | C0603 | 3 |
| 470nF, X7R, 16V | 470n | C8, C12, C16 | C0805 | 3 |
| TPS561201DDCT | D1 | SOT23-6 | 1 | |
| A4950E | D2, D3, D4 | SOIC-8 | 1 | |
| Littlefuse 0451010.MRL | FU1 | CAPMP7343X310N | 1 | |
| SLTF032T-101MR45 | 100u | L1 | SMD,7\(\times\)7\(\times\)3.2mm | 1 |
| MCW-0420-4R7-N1-M | 4u7 | L2 | 0420 | 1 |
| Green | LED1 | LED0603 | 1 | |
| Red | LED2 | LED0603 | 1 | |
| 0603_1% | 80K6 | R1 | R0603 | 1 |
| 0603_1% | 1K | R2 | R0603 | 1 |
| 0603_1% | 10K | R3, R4 | R0603 | 2 |
| SS56 | VD1 | DO-214AC | 1 | |
| MBRD2020COT-13 | VD2 | TO-252-2(DPAK) | 1 |
Требования к заданию
- В принципиальную схему запрещено добавлять компоненты, не представленные в ней, следует подписать обозначения компонентов и их номиналы согласно правилам.
- Оформлять принципиальную схему необходимо согласно ГОСТ 2.702-75. ЕСКД. Правила выполнения электрических схем: http://www.robot.bmstu.ru/files/GOST/gost_2.702-75.pdf
Критерии оценки задания приведены в файле: https://disk.yandex.ru/i/MECezVsLohjBxQ.
Решением задачи является комплект документации:
- принципиальная схема проекта;
- перечень используемых элементов с указанием их номинала (оформляется второй страницей);
- принципиальная схема оформляется в виде pdf-файла.
В качестве возможного варианта решения приводится работа команды, набравшая максимальное количество баллов (50 баллов): https://disk.yandex.ru/i/l2uLURLE2ahi1w.
Командные задачи второго этапа инженерного тура открыты для решения. Соревнование доступно на платформе Яндекс.Контест: https://contest.yandex.ru/contest/69914/enter/.
- Важным навыком для инженеров является разработка технической документации. Если изделие изготавливается для себя, то можно ограничиться эскизом или чертежом, но когда в процесс проектирования включено хотя бы несколько человек, когда есть заказчик или когда разрабатываемое устройство состоит из большого числа деталей и подсистем, тогда без полного комплекта документации не обойтись.
- Одним из важнейших документов на начальной стадии разработки является техническое задание (ТЗ). ТЗ обычно разрабатывается инженерами совместно с заказчиком. И именно по ТЗ заказчик потом принимает опытный образец или готовый продукт.
- В техническом задании отражены все основные требования к устройству, поэтому, чтобы написать ТЗ, необходимы усилия всех разработчиков (электронщики, конструкторы, программисты и др.).
- В Российской Федерации создана система стандартизации — ГОСТы, которым должна соответствовать вся конструкторская и технологическая документация. Это позволяет избежать разночтений в процессе разработки ТЗ. Стандарты сделаны прежде всего для того, чтобы облегчить жизнь разработчикам и всем вовлеченным в процесс проектирования и производства специалистам.
- В рамках командной задачи участникам предлагается разработать ТЗ к существующему телеуправляемому необитаемому подводному аппарату: https://www.ecagroup.com/en/solutions/rovingbat-hybrid-rov. «Заказчик» передает команде картинку с аппаратом и дает краткое описание того, как должен выглядеть и работать робот, а участники должны со слов «заказчика» разработать ТЗ на опытно-конструкторскую работу, результатом которой является опытный образец.
- В качестве существующего аппарата выбран ROVINGBAT компании ECA Group. Это один из известных подводных роботов в мире, признанный стандарт качества в своей области. Для разработки ТЗ можно использовать любую доступную информацию об аппарате ROVINGBAT.
- ТЗ будет оцениваться по определенным критериям. Подготовлен специальный лист оценки, который поможет правильно разработать ТЗ. Максимальное количество баллов за данное задание по критериям — 80. Оценка выполняется вручную экспертами, после чего приведенный результат нормируется на 100 баллов.
- В листе оценки есть формальные критерии (наличие перечня терминов, наличие перечня сокращений и т. п.), а есть содержательные критерии (характеристики изделия, конструктивные требования и т. п.). Кроме того, указаны пункты ГОСТов, на которые эксперты опираются при проверке работ.
- ТЗ необходимо загрузить в формате
*.docили*.docx. Размер файла должен быть менее 5 Мб. Все тексты будут проверяться на плагиат. Допустимая норма заимствований 20%.
Ознакомиться с критериями оценки можно по ссылке: https://disk.yandex.ru/i/DyIFySMiR1hbLA.
Решением задачи является документ, составленный по указанным в критериях оценивания требованиям.
В качестве возможного варианта решения приводится работа команды, набравшая максимальное количество баллов (97,5 из 100): https://disk.yandex.ru/i/zaqiNLpo0KFZEw.
















