Привет, Хабр! На этот раз мы пригласили в наш блог Артема Аксенова — учредителя и генерального директора компании VRM Group из Иннополиса. Его компания занимается установкой и настройкой промышленных роботов на литейных производствах, разработкой учебных AR/VR-симуляторов и роботизированных ячеек для обучения робототехнике. 

Мы попросили Артема рассказать об образовании: о работе программиста-робототехника в этой сфере, преимуществах и перспективах профессии. Стоит ли осваивать ее в 2022 году?


Я начал заниматься направлением робототехники-мехатроники на производственном объединении «Зарница» в 2014 году. Эта компания разрабатывает учебно-лабораторное оборудование для разных специальностей. Для примера, одной из задач было создание интерпретатора для промышленных языков программирования.

В университетах обычно изучают экосистему ROS — набор универсальных программных сред для управления роботами, но каждый производитель роботов предлагает свой язык. Universal Robots используют графический язык программирования, KUKA Robotics Language напоминает C, у японской FANUC программы похожи G-code ЧПУ-станков. Интерпретатор позволял писать на C и переводить программу в набор команд для конкретного типа роботов. Кроме того, в Зарнице разработали компактный учебный шестиосевой манипулятор.

На тот момент в целом по РФ, оснащение лабораторных комнат в университетах и колледжах и школах все еще было бедным. Зачастую роботов показывали как в музее, — вдруг студенты что-то сломают.

Эта общая проблема обучения сервисному обслуживанию любой мало-мальски сложной техники. Допустим, необходимо научить студентов ремонтировать Камаз. Принесли им двигатель. Они три-четыре раза его собрали-разобрали, но после этого он уже вряд ли заведется. К сожалению, самый дешевый промышленный манипулятор стоит в четыре раза дороже, чем движок грузовика, при том, что понимание внутреннего устройства робота для сервисного специалиста просто необходимо.

Именно поэтому стоит активнее использовать дополненную и виртуальную реальность. С ее помощью можно показать многие детали конструкции в 3D, в масштабе, не разбирая робота до винтика. Да и в сборке она помогает. 

В 2017 году я задумался о разработке такого симулятора для роботов KUKA, в 2018 году в поиске льгот для стартапов перебрался в Иннополис и занялся разработкой. Затем наша компания перешла к созданию роботизированных учебных ячеек для WorldSkills.

Кадр с WorldSkills Russia 2021. Всего за нашими плечами 20 региональных чемпионатов и 4 национальных, включая чемпионат мира
Кадр с WorldSkills Russia 2021. Всего за нашими плечами 20 региональных чемпионатов и 4 национальных, включая чемпионат мира

На этих соревнованиях студенты решают реальные задачи с промышленных предприятий, но в упрощенном виде: программируют загрузку/выгрузку станков, точечную сварку, роботизированную фрезеровку и так далее.

Начиная с конца 2019 года мы плотно занялись интеграцией роботов в промышленные производства и начали внедрять решения для литья металлов под высоким давлением.

Что делает программист роботов

Первое, на что обращаешь внимание, общаясь со студентами, — непонимание того, что роботов в составе комплекса запускают как минимум три специалиста:

  • программист-робототехник, отвечающий за предварительные симуляции и подбор манипулятора, а также разработку логики и написание программы;

  • программист ПЛК — он настраивает взаимодействие робота с устройствами, из которых состоит производственная линия;

  • роботист, который руководит установкой, наладкой и калибровкой манипулятора на объекте.

Если роботист — это уровень среднего профессионального образования, то программист-робототехник и программист ПЛК — уровень университета.

Загрузка изделия в пресс (сверху) и съем детали (снизу). Оранжевый манипулятор-смазчик на втором фото ждет своей очереди
Загрузка изделия в пресс (сверху) и съем детали (снизу). Оранжевый манипулятор-смазчик на втором фото ждет своей очереди

Расскажу о работе программиста-робототехника на примере одного из последних проектов по запуску литейного комплекса. В его составе была пара робоманипуляторов (съемщик и смазчик), пресс, который снимает с детали излишки материала, жидкостная система охлаждения, система сортировки отлитых изделий по качеству, несколько конвейерных систем, система аспирации, система безопасности и поворотные/захватные модули для различных типов отливок.

Следующий этап производства: погружение детали в ванную охлаждения (сверху) смазка пресс-формы (снизу)
Следующий этап производства: погружение детали в ванную охлаждения (сверху) смазка пресс-формы (снизу)

Первое, что делает программист-робототехник в рамках подобного проекта, — вместе с конструктором и проектировщиком планирует расстановку всего оборудования. В основном для этого используется симулятор Visual Components.

При этом происходит окончательная подборка моделей роботов под конкретные условия: энергоподводы, высоту потолков, размер помещения и так далее. Приходится учитывать и то, что роботы имеют разную досягаемость и грузоподъемность, которая зависит от положения манипулятора в пространстве.

Большую часть рабочего времени программист наблюдает за действиями робота в Visual Components
Большую часть рабочего времени программист наблюдает за действиями робота в Visual Components

После согласования расстановки и подбора оборудования начинается этап настройки взаимодействия устройств, входящих в состав комплекса. На этом этапе к работе подключается программист ПЛК. Он настраивает обмен сигналами между роботом и периферийным оборудованием: различными датчиками, системой безопасности и другими агрегатами. Чаще всего используются внешние ПЛК, а для удобства управления комплексом подключаются либо сенсорные HMI-панели, либо кнопочные посты.

В итоге составляется блок-схема техпроцесса, а затем пишется алгоритм. Основная задача программиста на этом этапе — оптимизировать перемещения манипулятора так, чтобы общее время цикла работы было минимальным и соответствовало требованиям заказчика. С учетом различных требований и условий эта задача напоминает замысловатую головоломку. Например, нужно уложить в 40 секунд набор взаимосвязанных и отчасти взаимоисключающих действий сразу нескольких агрегатов: захват детали, открытие/закрытие дверей, охлаждение детали, смазка, обломка под прессом, подача новой детали и так далее.

Типичная блок-схема техпроцесса с участием роботов
Типичная блок-схема техпроцесса с участием роботов

Приходится рисовать сложные схемы, раскладывать циклограммы на этапы, учитывать пересекающиеся процессы и рассчитывать время так, чтобы робот успел выполнить все необходимые манипуляции вовремя.

Хорошая программа пишется так, чтобы «швы» между просчетом логики и движениями были незаметны. Это позволяет сделать цикл быстрым, снижает нагрузку на узлы и продлевает срок службы робота. А еще это просто красиво — робот двигается плавно, без рывков и остановок.

Кроме того, важно написать и задокументировать код так, чтобы наладчик производственного процесса мог в нем разобраться, если понадобится изменить ключевые позиции робота, настроить движения под изменившуюся форму изделий. При этом по части программирования все в основном стандартно: типы данных, операторы, циклы, алгоритмы, объекты, плюс команды для роботов и всякие мелкие особенности оборудования конкретных брендов.

Преимущества профессии

Программисты из нашей команды говорят, что им нравится сразу видеть результат работы — робот движется, техпроцесс идет, но это не единственное ее преимущество.

Кнопочный пост управления роботизированным производственным комплексом
Кнопочный пост управления роботизированным производственным комплексом

Если сравнить зарплаты у программистов роботов и, например, «обычных» Java-разработчиков, оказывается, что первым нужно меньше профессионального опыта, чтобы начать получать приличную зарплату. Зачастую, не самый сильный мидл в робототехнике зарабатывает на уровне молодого сеньора из компании, которая занимается разработкой ПО.

Еще одно преимущество работы программиста-робототехника — разнообразие. Каждый новый проект — решение нестандартных задач.

Иногда сложности связаны с тем, что мы ограничены помещением или внутренней логистикой, в других случаях нужно учитывать микроклимат в конкретном цеху.

Например, на сквозняке точность сварки резко падает, и оборудование приходится расставлять с учетом воздушных потоков и ветрозащиты. Такой вот тетрис для взрослых бородатых инженеров.

Бывает, приходится подстраиваться под неотлаженные техпроцессы, а порой и брать в руки инструменты.

Убираем кронштейн, которого не было на 3D-модели на этапе проектировки
Убираем кронштейн, которого не было на 3D-модели на этапе проектировки

Как-то нас попросили установить робота с точностью сварки две сотых микрона. Главный технолог уверял, что заготовки делаются как раз с такой точностью. Приехав на объект, мы увидели, как лаборант проверяет размеры миллиметровой линейкой…=). Чтобы решить эту задачку, потребовалось немало находчивости. В России она вообще часто пригождается.

Как вкатиться в профессию

Необходимые навыки

Помимо умения нестандартно мыслить, чтобы стать программистом роботов вам понадобится:

  • Развитое пространственное воображение. Без него очень сложно представить желаемую траекторию манипулятора и без ошибок запрограммировать нужное движение.

  • Представление о различных производственных решениях на базе роботов и техпроцессах, в которых они участвуют. Видеоролики с объяснениями легко найти, например, на канале KUKA на YouTube. Со временем придется научиться работать с CAM-системами, так что имеет смысл поискать информацию и о них.

  • Умение составлять блок-схемы, писать первичные коды перемещений. 

  • Знание хотя бы нескольких типов контроллеров и сигналов (двоичный, шестнадцатеричный код, биты, двойные слова).

  • Понимание хотя бы одного специализированного языка программирования. В нашей компании много разработчиков, которые писали на C и C++. Перейти с этих языков на KUKA Robotics Language достаточно просто.

Где учиться

В России с 1987 по 2011 год робототехника практически не преподавалась, разве что кроме МГТУ имени Баумана, Санкт-Петербургского политехнического университета и ряда корпоративных колледжей, но в последние десять лет ситуация меняется.

Для школьников и студентов проходят конкурсы WorldSkills, олимпиады WRO, Робофест, FIRST LEGO League, открылись кванториумы.

Лаборатория WorldSkills в Воронежском авиационном техникуме им. В.П. Чкалова, которую мы оснастили в 2019 году
Лаборатория WorldSkills в Воронежском авиационном техникуме им. В.П. Чкалова, которую мы оснастили в 2019 году

Программистов-робототехников стали готовить в МИРЭА, МТУСИ, СколТехе, ИТМО, Университете Иннополис и ряде других вузов. Такие направления обучения появились во многих колледжах, например, МГОК.

Впрочем, чтобы вкатиться в профессию не обязательно получать классическое образование. Так, один из наших программистов до 35 лет работал в Cisco и только потом ушел в робототехнику. Многое он изучил совершенно самостоятельно.

Базовые знания можно почерпнуть из онлайн-курсов на платформах вроде edX и stanford.edu. Чтобы углубиться в промышленную робототехнику, стоит изучить бета-версии KUKA Sim и FANUC ROBOGUIDE с бесплатной месячной лицензией. У того же Visual Components есть бесплатные разделы (правда, узкого профиля). Кроме того, на сайтах производителей опубликованы методички по конкретным моделям роботов. Там же можно познакомиться с KRL-библиотеками, а с конкретными вопросами лучше обращаться в тематические группы на Reddit и профессиональные чаты, например группу ROS в телеграм.

Симулятор SimPRO поддерживает и программирование роботов, и имитацию CAM-систем
Симулятор SimPRO поддерживает и программирование роботов, и имитацию CAM-систем

Самый быстрый способ погружения в тему — специализированные профессиональные курсы, но стоят они недешево. Скажем, KUKA просит около 140 тысяч рублей за неделю своей образовательной программы. Однако, если вы серьезно намерены войти в профессию, но по каким-то причинам не хотите идти в вуз, то оно того стоит. Пройдя подобный курс, можно устроиться на стажировку практически к любому интегратору. Им постоянно не хватает программистов.

Карьерный путь и перспективы

По мере работы стоит освоить программирование ПЛК (например, Siemens или Omron), пройти курсы повышения квалификации в KUKA или у другого крупного вендора. Наши сотрудники уделяли много внимания Universal Robots, потому что у них дешевые коботы, но сейчас компания ушла из страны.

Вместе с новыми знаниями проходит и карьерный рост внутри компании. Рядовой программист становится руководителем проектной группы. Другие варианты профессионального развития — пойти работать к вендору (FANUC, ABB или той же KUKA) или открыть собственный стартап-интегратор.

На заводах КАМАЗ больше 500 роботов и, хотя все они давно установлены и работают, нередко нужно подправить точки, переписывать программы. Подобные заказы успешно выполняют команды из нескольких фрилансеров и, похоже, теперь они станут еще востребованнее.

За последние три года под брендом ВР-МАСТЕР наша команда реализовала больше 50 проектов с использованием роботов и вошла число крупнейших российских интеграторов по оценкам НАУРР
За последние три года под брендом ВР-МАСТЕР наша команда реализовала больше 50 проектов с использованием роботов и вошла число крупнейших российских интеграторов по оценкам НАУРР

Да, в России в разных отраслях внедряется приблизительно 1 тыс. роботов в год. Это небольшой рынок, и его рост замедлился. Отчасти потому, что не все понимают, как использовать роботов, так, чтобы они работали качественнее и эффективнее людей. Другая проблема — стоимость таких комплексов. Компании боятся вкладывать в производство большие деньги, потому что экономика нестабильна, и заказов завтра может не быть.

Из-за санкций из страны ушло несколько вендоров. Оставшиеся альтернативы хуже, и российские производители роботов вряд ли смогут быстро догнать мировых лидеров. Однако, не все так плохо, как может показаться.

Даже для существующих в России производств программистов-робототехников все равно не хватает, и это не говоря о других странах

Я знаю проекты по литейке в Алжире и Калифорнии, которые не получается запустить из-за нехватки специалистов по роботам. Даже если программист-робототехник не найдет себе применение в России, то за рубежом он точно будет востребован.

Так или иначе, за такими машинами будущее. Мой дедушка 20 лет возил по заводу ванны с расплавленным алюминием, но уже сейчас всю литейку переводят на роботов. Это логичный, даже неизбежный путь развития, который делает промышленные производства чище, безопаснее и эффективнее.

Комментарии (6)


  1. Karlson_rwa
    21.07.2022 17:47
    +4

    Убираем кронштейн, которого не было на 3D-модели на этапе проектировки
    ТБ? Не не слышали. Конвейер открыт, робот не зачехлен, головки и направляющие открыты. Это вы так монтажом занимаетесь? Еще и давление в магистрали наверняка есть.
    В России с 1987 по 2011 год робототехника практически не преподавалась
    Ржу в голос, извините. Тот же МИРЭА много лет выпускал инженеров по специальности «роботы и робототехнические системы» и «мехатроника». Да, куку завезли только году в 14, ЕМНИП, лаборатория ABB там появилась тоже примерно в те годы. Но это лишь манипуляторы. До этого кафедра ПУ всегда занималась подвижными самоходными роботами. Поверьте, я знаю о чем пишу :)

    UPD: Мне тут еще коллеги подсказывают, что задолго до этого в СТАНКИНе обучали промышленным роботам.


  1. osmanpasha
    22.07.2022 07:17

    Какие перспективы у таких робо-сервисных компаний в России (да и вообще у индустрии в целом) с учетом ухода многих компаний, которые производят этих роботов, и прекращения поставок комплектующих и запчастей?


    1. Sergeant101
      22.07.2022 08:57

      В текущей политико-экономической ситуации перспектив никаких, ибо российский менеджмент вместо одного робота наймет десять таджиков, даже если это будет экономически невыгодно.

      Sad but true (etc)


  1. paab
    22.07.2022 09:53
    +2

    Боюсь промышленная роботизация на нашем рынке не замедлилась, а подходит к концу, так и не успев начаться. Так я могу судить по предприятиям, на которых участвовал в запусках роботизированных линий или занимаюсь их сопровождением. Общение с коллегами в том числе и официальными представителями ABB, так же это подтверждает. Все инженеры в принудительных бессрочных отпусках, поставки остановлены, даже мелких расходников невозможно привезти. Оборудование, требующее обслуживания будет либо остановлено, либо изнасиловано окончательно. Некоторые начали изобретать очень длинные и дорогие схемы поставок. Может у KUKA дела лучше?

    Ну и на счет зарплат у программистов роботов, вы немного лукавите. Не могу сказать, как дела у не самого сильного мидла в робототехнике, против молодых сеньоров разработчиков ПО, не отношу себя к какой-либо категории в данной профессии. Запускал и поддерживаю: сварку, линии точного литья под давлением, линии шлифовки и полировки изделий различной сложности, гальваника, конвейерная сборка, производство стекла, оптимизация процессов после других внедренцев. Работаю исключительно с робототехникой ABB. Исходя из вашей статьи, часто выполняю обязанности всех трех персонажей: программист-робототехник, программист ПЛК, смешное слово – роботист.

    Вакансий на том же хедхантере невероятно мало. Зарплаты чаще ниже, особенно если это не официальный представитель производителя техники, а интегратор. Нюанс с постоянными и длительными командировками стоит учитывать, это не то же самое, что сидеть в уютном кресле за разработкой ПО.

    У вас позитивная статья, но в полях пока все достаточно грустно и работы становится всё меньше. Хотел бы я ошибаться, но пока картина такова, что 50 голодных чернорабочих для нашей промышленности в нынешних условиях, гораздо выгоднее чем линия роботов и ситуация продолжает наращивать негативный фон.


    1. Sergeant101
      22.07.2022 11:04

      В одном не соглашусь, что 50 чернорабочих выгоднее.

      Я как то "на пальцах" считал стоимость владения роботом и чернорабочими. По любым раскладам выходит что за пару тройку лет робот при достаточной загрузке окупается, ибо не спит, не ест, не курит, не пьет, не болеет, не ошибается и пашет круглые сутки.


  1. TimID
    22.07.2022 16:31

    Робототехника уже давно поделилась на несколько достаточно непересекающихся отрасли. Я уже не говорю о смежных направлениях вроде мехатроники. В вузах учат робототехнике очень давно.
    И появляются новые программы, которые пытаются как раз уйти от "артефактной теоретической" подготовки в пользу современной подготовки. Лучше бы о них написали - содержание посравнивали.
    Например, в "Сириусе" есть программа.
    А уж "дроны" - так вообще со скоростью пожара захватывают вузы.