Команда робототехников
В этом модуле вы узнаете:
• какие специалисты точно нужны для создания роботов и как с ними работать;
• как выбирают, из чего сделать робота;
• почему без математики робот не сможет перемещаться;
• кто учит роботов «ходить» и «видеть».
В первом модуле курса мы говорили о том, что робота вполне можно сделать самостоятельно, были бы подручные материалы и толика вдохновения. В разработке промышленных, военных и других сложных роботов этого недостаточно, здесь нужны квалифицированные инженеры разной специализации.
Конкретный состав команды зависит от задачи. В несложных проектах какой-то специалист может и не потребоваться; бывает и так, что один инженер выполняет две-три роли. Когда же речь идет о строительстве марсохода, команда нужна большая, и специалистов одного профиля может быть несколько.
В этом модуле мы поговорим о том, какие специалисты нужны в команде, которая строит современного гибридного робота.
Теперь расскажем подробнее о каждом из этих инженеров.
Робот воспринимает мир не так, как мы: у него нет органов чувств, он вынужден полагаться на цифры. Данные с датчиков — это числа. Алгоритмы, которые управляют его поведением в зависимости от полученной информации, тоже оперируют числами. Благодаря этим числам робот может перемещаться, распознавать объекты и голоса, манипулировать предметами. Словом, без математики в робототехнике не обойтись.
Робот-пылесос, марсоход Curiosity и футуристичные микродроны, опыляющие растения вместо пчел, — всем им приходится исследовать новое пространство, будь то квартира, поля вокруг фермы или кратер чужой планеты. Такие роботы должны уметь самостоятельно изучать местность, создавать ее карты и выбирать оптимальные маршруты для перемещения.
Ведь что знает о вашей комнате робот-пылесос, который вы только что достали из коробки, зарядили и торжественно выпустили в мир, полный пыли, крошек, кошачьей шерсти и разнообразных опасностей — от ножки стола до озадаченных домашних животных? Почти ничего, кроме, может быть, данных о некотором ближайшем окружении. Здесь на помощь приходит математика, а точнее — графы. Не пугайтесь, вы уже видели их на схеме линий метро. Граф — это набор соединенных точек: благодаря линиям мы можем найти оптимальный путь между точками. С помощью графов навигатор в вашей машине умеет строить кратчайший маршрут.
Робот-пылесос, ловко уворачиваясь от кошки и ножек стола, тоже записывает данные о местности в виде графа: отдельные объекты становятся точками — вершинами графа, а переходы от одной точки к другой — ребрами. При этом ребро можно построить только тогда, когда переход из одной вершины в другую совершен (до этого момента робот «не знает» о существовании ребра). Так он и ползает деловито по ребрам между вершинами, пока не приберет всю квартиру. Информация о пройденных ребрах и вершинах остается в памяти, так что по второму кругу на одном месте убирать он не будет.
Когда мы определили, как робот будет двигаться и по какой формуле станет обрабатывать полученные данные, приходит время научить его, как следует вести себя в разных ситуациях. Инженеры-программисты помогут роботам выбрать план действий в зависимости от показаний датчиков.
Помочь роботу вовремя снять показания с датчиков. Задача программы — дать роботу порядок действий: вот так получаешь информацию из внешнего мира, вот так с ней поступаешь. Например, именно на уровне программы определяется, с какой частотой робот снимает данные с датчиков в память. Когда речь идет о метеостанции, программу для снятия данных достаточно запускать несколько раз в сутки. В случае с беспилотным автомобилем ситуация другая: информацию с датчиков необходимо получать в режиме реального времени, чтобы обеспечить безопасность всех участников движения.
Помочь роботу принять верное решение на основе данных датчиков. Получив данные, программа соотносит их с некоторым эталонным значением. Допустим, программа дает сигнал промышленному манипулятору переместить предмет. Датчики манипулятора сообщают программе, как он расположен в пространстве, открыт или закрыт захватный механизм, есть ли в нем груз. Сравнивая показания датчиков с эталонными для текущей ситуации значениями, программа корректирует его действия. Эталонной величиной может быть, например, градус наклона манипулятора. Если робот действует в зависимости от температуры, это и будет его эталонной величиной. Если его функция связана со скоростью, то эталонная величина — минимальная или максимальная скорость.
Помочь роботу «видеть» и распознавать объекты. Вы уже знаете, как графы помогают роботам двигаться. Теперь давайте посмотрим, как они помогают «видеть». Любым роботам, которые манипулируют объектами, необходимо уметь различать их между собой. Камеры и алгоритмы распознавания позволяют фактически научить робота «видеть» окружающий мир.
Одна из задач в процессе распознавания образов — выделение контуров объектов. Тут графы и приходят на помощь. Например, они помогают выделить подконтуры. Компьютер не видит, как человек, весь объект целиком, а может только распознать отдельные части, сопоставить с другими изображениями и достроить целое. Подконтуры, то есть контуры частей, помогают собрать объект воедино, составить общую картинку.
Те же графы позволяют построить модель поверхности объекта: горизонтальная, вертикальная, с изгибом, здесь выпуклая, тут вдавленная. Сличая разные поверхности из своей базы, робот «понимает» форму объекта. Сравнивая контуры одного и того же объекта, программа может сделать вывод, что он переместился (она сопоставляет два контура и «понимает», что они похожи, значит, положение объекта изменилось).
Без правильной настройки электронных схем и компонентов роботы не будут функционировать. Построить робота самостоятельно, ничего не зная о его электронной части, невозможно. В дело вступают инженеры-электроники.
Сегодня больше всего распространены гибридные роботы. Они состоят из двух и более систем с разными принципами работы. Почти всегда в них есть электроника: платы, провода, микросхемы. Значит, в команду разработчиков робота нужен инженер-электроник.
Задача электротехники — соотнести требования программного обеспечения с реальностью. Важно правильно подобрать комплектующие и тщательно их настроить.
Это особенно критично, когда все компоненты робота создаются с нуля. Готовые модули построены и проверены производителем, их параметры продуманы заранее. Однако для некоторых специфических задач они не подходят, и тогда приходится разрабатывать составляющие самостоятельно.
Давайте разберем на конкретном примере, что именно делает электроник для робота и от каких проблем он может спасти.
1. Блок питания
Блок питания дает роботу энергию для работы. Если включить все приводы одновременно, блок питания может не справиться с нагрузкой и перегореть. Именно электроник посчитает суммарную потребляемую мощность всех приводов и их схемы управления и спроектирует блок питания с запасом по мощности.
2. Силовые провода — провода, по которым идет высокий ток
Силовые провода могут быть разной толщины (электроники говорят «сечения»). Чем выше ток, который идет по проводу, тем толще провод должен быть. В противном случае есть опасность, что провод будет перегружен, нагреется или даже загорится. Грамотный электроник подберет провода нужного сечения в зависимости от силы тока, который по ним пойдет.
3. Силовая цепь — участок электронной платы, отвечающий за передачу энергии
Силовая цепь получает напряжение от блока питания и распределяет его по всей плате, тем самым запуская работу всех систем. Если неправильно учесть силу тока, протекающего в силовой цепи, плата нагревается. В лучшем случае робот перестанет работать, в худшем — загорятся отдельные компоненты. Электроник необходим, чтобы учесть силу тока при выборе платы и проводников.
4. Условия работы
Иногда получается так, что условия реальной работы не совпадают с теми, для которых проектировали устройство. Это может вызвать явные проблемы — отдельные компоненты выходят из строя, какие-то системы или все устройство перестает работать. Могут возникать и малозаметные проблемы — из-за реакции компонентов на температуру манипулятор перемещается на неверное расстояние. Электроник учтет будущие условия работы при проектировании, а при необходимости — предусмотрит охлаждение элементов или внутреннюю вентиляцию.
Вот еще несколько задач, которые помогают решить электроники:
подобрать величину напряжения и тока на выходе устройства управления двигателями робота, чтобы он мог перемещаться на точное расстояние с заданной скоростью;
выбрать датчики исходя из поставленных задач;
подобрать управляющий микроконтроллер, чтобы обработать информацию, приходящую с датчиков;
выбрать требуемые электродвигатели при проектировании робота.
Даже в век точной электроники роботы, не имей они механических частей, оставались бы просто неподвижным набором деталей. Создателям роботов не обойтись без инженера-мехатроника — специалиста по разработке сложных механизмов.
Если неверно спроектировать механические составляющие робота, на исправление проекта и изготовление новых деталей уйдет немало времени и денег. Давайте посмотрим на примере, какие элементы робота — ответственность мехатроника и как он может сделать робота надежнее.
1. Плечо/звено
С точки зрения механики промышленный манипулятор представляет собой систему балок (плеч, звеньев) и шарниров. Чтобы звено было достаточно длинным или выдерживало большие нагрузки, первое, что приходит в голову, это сделать его потолще, но тогда оно станет слишком тяжелым. Мехатроник рассчитает, из какого материала лучше изготовить звено, какого оно должно быть размера и какая конструкция звена подойдет для решения конкретной задачи.
2. Редуктор
Редуктор уменьшает скорость движущихся частей относительно скорости мотора, чтобы повысить силу тяги устройства (так оно поднимет больший вес и выдержит большую нагрузку). Если тип и характеристики редуктора подобраны неверно, он работает под большой нагрузкой. Грамотный мехатроник подберет редуктор так, чтобы он работал с нужной эффективностью, но при этом не на пределе мощности.
3. Шарнир
Шарнир — это «сустав», он соединяет звенья и позволяет им менять свое положение относительно друг друга. Основной критерий эффективности манипулятора — степень его свободы, то есть то, как он перемещается в пространстве. Если манипулятор может перемещаться только вверх-вниз или вращаться вокруг всего одной оси, степень его свободы невелика, поэтому задач он решает немного. Если нужно, чтобы он перемещался в разных плоскостях и вращался вокруг разных осей — это задача мехатроника. Он же сделает так, чтобы на перемещение уходило как можно меньше времени и энергии.
Вероятно, из-за выброса гормона октопамина
Итальянские энтомологи придумали, как сделать выращенных в неволе самцов средиземноморских плодовых мух более успешными любовниками. Эксперименты показали, что если дать мужским особям этих насекомых подраться с роботизированной моделью сородича, то впоследствии они будут больше времени тратить на ухаживания за самками и спаривание с ними. Кроме того, у них вырастет процент успешных попыток спаривания. Как отмечается в статье для журнала Biological Cybernetics, результаты исследования повысят эффективность программ по сокращению численности насекомых, в ходе которых в дикую природу массово выпускают стерилизованных самцов. Среди насекомых много вредителей сельского хозяйства, переносчиков инфекций и инвазивных видов, угрожающих целым экосистемам. Один из наиболее эффективных и безопасных для окружающей среды методов борьбы с ними заключается в том, чтобы в большом количестве выращивать в неволе стерильных самцов определенных видов и выпускать их в природу. После того, как такие особи спарятся с дикими самками, те не дадут потомства. В результате местная популяция вида сократится или вовсе исчезнет. Несмотря на все достоинства этого подхода, у него есть и недостатки. Одна из проблем заключается в том, что выращенные в неволе и стерилизованные самцы приспособлены к жизни в природе хуже своих диких сородичей. Например, они зачастую плохо справляются с поиском и оплодотворением самок. Команда энтомологов под руководством Донато Романо (Donato Romano) из Школы передовых исследований имени Святой Анны в Пизе решила сделать выращенных в неволе самцов насекомых более успешными любовниками. Ученые сосредоточили внимание на средиземноморских плодовых мухах (Ceratitis capitata) — широко распространенных вредителях, личинки которых питаются плодами более 200 видов растений. С этими насекомыми часто борются, выпуская в природу стерилизованных самцов. Романо и его соавторы обратили внимание, что самцы средиземноморских плодовых мух агрессивно ведут себя по отношению друг к другу. Мужские особи этих насекомых занимают на листьях или плодах растений участки, где устраивают брачные демонстрации для привлечения самок. Хозяин участка ревностно защищает его от конкурентов, вступая с ними в ритуализированные поединки, включающие взмахи и удары крыльями, а также покачивания и толчки головой. Авторы предположили, что сражения с соперниками запускают в организме мух-самцов изменения, которые впоследствии позволяют им эффективнее привлекать и оплодотворять самок. Чтобы проверить данную идею, исследователи провели серию экспериментов с выращенными в неволе самцами плодовых мух. Они сажали по одной мужской особи за раз в прозрачный контейнер, на дне которого по окружности лежали пять дисков, вырезанных из листьев цитрусовых деревьев. После этого подопытных мух на двадцать минут оставляли в одиночестве, чтобы они заняли один из дисков в качестве демонстрационной площадки. Затем авторы помещали в центр окружности между дисками роботизированную модель самца, управляемую с помощью магнита, Ее направляли к диску, выбранному настоящим самцом, чтобы сымитировать вторжение соперника. Робомуха находилась у границ занятого участка тридцать секунд, после чего возвращалась в центр окружности на шестьдесят секунд. Данная последовательность действий повторялась в течение пятнадцати минут. Подопытные самцы видели в роботах соперников и демонстрировали агрессивное поведение, защищая от них свои участки. На следующем этапе к самцам плодовых мух, которые сразились с роботом, на час подсаживали половозрелых самок. Исследователи фиксировали, сколько времени у мужских особей займет вибрациями крыльями (это часть брачной демонстрации), как быстро они перейдут к совокуплению и как долго оно продлится. Кроме того, они оценивали, закончится ли попытка спариться успешно или самка отвергнет ухаживания. В качестве контрольной группы выступали самцы, которые не сталкивались ни с живыми, ни с роботизированными соперниками. В обеих группах было по 120 особей. Как и ожидали авторы, встреча с роботом-конкурентом помогла самцам плодовых мух эффективнее привлекать самок. По сравнению с сородичами из контрольной группы они дольше вибрировали крыльями, позже переходили к совокуплению и дольше оплодотворяли самок. В целом такие самцы тратили больше времени на ухаживания и спаривание. А их попытки совокупиться с самками чаще заканчивались успешно. Романо и его коллеги предполагают, что во время драки с соперником (настоящим или роботизированным) в гемолимфу мух-самцов выбрасывается большое количество октопамина — аналога норадреналина у беспозвоночных. Это соединение активирует октопаминергические нейроны и тем самым стимулирует агрессивное и брачное поведение. Авторы надеются, что результаты их исследования сделают проекты по контролю численности вредных насекомых более эффективными. Однако для этого нужно придумать, как тренировать стерилизованных самцов в промышленных масштабах. Ранее мы рассказывали о том, как нидерландские инженеры создали легкого летающего робота, который позволяет изучать механизмы, лежащие в основе полета насекомых. Несмотря на отсутствие хвоста он может управлять движением вокруг вертикальной оси с помощью движений крыльев, создающих крутящие моменты по остальным осям. Эксперименты с роботом позволили подтвердить гипотезу, согласно которой дрозофилы и некоторые другие насекомые используют аналогичный механизм во время резких поворотов.