Функционирует при финансовой поддержке Федерального агентства по печати и массовым коммуникациям (Роспечать)

Робототехника. Модуль 3

Команда робототехников

В этом модуле вы узнаете:

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


Команда робототехников: основные участники

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

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

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

Инженер-мехатроник
Подбирает размеры и конструкцию отдельных элементов робота, а также материалы, из которых должны быть изготовлены детали.

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

Инженер-программист
Создает алгоритмы, по которым робот взаимодействует с окружающей средой.

Инженер-электроник
Отвечает за подбор микроконтроллеров, плат, проводов, блоков питания и других электронных элементов.

Теперь расскажем подробнее о каждом из этих инженеров.

Инженеры-математики

Робот воспринимает мир не так, как мы: у него нет органов чувств, он вынужден полагаться на цифры. Данные с датчиков — это числа. Алгоритмы, которые управляют его поведением в зависимости от полученной информации, тоже оперируют числами. Благодаря этим числам робот может перемещаться, распознавать объекты и голоса, манипулировать предметами. Словом, без математики в робототехнике не обойтись.

Робот-пылесос, марсоход Curiosity и футуристичные микродроны, опыляющие растения вместо пчел, — всем им приходится исследовать новое пространство, будь то квартира, поля вокруг фермы или кратер чужой планеты. Такие роботы должны уметь самостоятельно изучать местность, создавать ее карты и выбирать оптимальные маршруты для перемещения.

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

Робот-пылесос, ловко уворачиваясь от кошки и ножек стола, тоже записывает данные о местности в виде графа: отдельные объекты становятся точками — вершинами графа, а переходы от одной точки к другой — ребрами. При этом ребро можно построить только тогда, когда переход из одной вершины в другую совершен (до этого момента робот «не знает» о существовании ребра). Так он и ползает деловито по ребрам между вершинами, пока не приберет всю квартиру. Информация о пройденных ребрах и вершинах остается в памяти, так что по второму кругу на одном месте убирать он не будет.

Инженеры-программисты

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


Программы нужны, чтобы...

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

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

Помочь роботу «видеть» и распознавать объекты. Вы уже знаете, как графы помогают роботам двигаться. Теперь давайте посмотрим, как они помогают «видеть». Любым роботам, которые манипулируют объектами, необходимо уметь различать их между собой. Камеры и алгоритмы распознавания позволяют фактически научить робота «видеть» окружающий мир.

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

Те же графы позволяют построить модель поверхности объекта: горизонтальная, вертикальная, с изгибом, здесь выпуклая, тут вдавленная. Сличая разные поверхности из своей базы, робот «понимает» форму объекта. Сравнивая контуры одного и того же объекта, программа может сделать вывод, что он переместился (она сопоставляет два контура и «понимает», что они похожи, значит, положение объекта изменилось).

Инженеры-электроники

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

Сегодня больше всего распространены гибридные роботы. Они состоят из двух и более систем с разными принципами работы. Почти всегда в них есть электроника: платы, провода, микросхемы. Значит, в команду разработчиков робота нужен инженер-электроник.

Задача электротехники — соотнести требования программного обеспечения с реальностью. Важно правильно подобрать комплектующие и тщательно их настроить.

Это особенно критично, когда все компоненты робота создаются с нуля. Готовые модули построены и проверены производителем, их параметры продуманы заранее. Однако для некоторых специфических задач они не подходят, и тогда приходится разрабатывать составляющие самостоятельно.

Давайте разберем на конкретном примере, что именно делает электроник для робота и от каких проблем он может спасти.



1. Блок питания

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

2. Силовые провода — провода, по которым идет высокий ток

Силовые провода могут быть разной толщины (электроники говорят «сечения»). Чем выше ток, который идет по проводу, тем толще провод должен быть. В противном случае есть опасность, что провод будет перегружен, нагреется или даже загорится. Грамотный электроник подберет провода нужного сечения в зависимости от силы тока, который по ним пойдет.

3. Силовая цепь — участок электронной платы, отвечающий за передачу энергии

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

4. Условия работы

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


Вот еще несколько задач, которые помогают решить электроники:

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

  • выбрать датчики исходя из поставленных задач;

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

  • выбрать требуемые электродвигатели при проектировании робота.

Инженеры-мехатроники

Даже в век точной электроники роботы, не имей они механических частей, оставались бы просто неподвижным набором деталей. Создателям роботов не обойтись без инженера-мехатроника — специалиста по разработке сложных механизмов.

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


1. Плечо/звено

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

2. Редуктор

Редуктор уменьшает скорость движущихся частей относительно скорости мотора, чтобы повысить силу тяги устройства (так оно поднимет больший вес и выдержит большую нагрузку). Если тип и характеристики редуктора подобраны неверно, он работает под большой нагрузкой. Грамотный мехатроник подберет редуктор так, чтобы он работал с нужной эффективностью, но при этом не на пределе мощности.

3. Шарнир

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


ПЕРЕЙТИ К ЧЕТВЕРТОМУ МОДУЛЮ




Нашли опечатку? Выделите фрагмент и нажмите Ctrl+Enter.