Контроллеры движений
Поддержка устройств
Сведения об оборудовании
Windows Mixed Reality контроллеры движения обеспечивают точное и быстро отслеживающее отслеживание перемещений в поле зрения с помощью датчиков на иммерсивное гарнитуре. Нет необходимости устанавливать оборудование на стены в своем пространстве. эти контроллеры motion предлагают такую же простоту установки и переносимости, как Windows Mixed Reality впечатляющие головные телефоны. Наши партнеры по планированию рынка и продают эти контроллеры в розничных магазинах в этом празднике.

Знакомство с контроллером
Функции
Настройка
Перед началом
Требуется:
проверка на наличие обновлений для Windows, Unity и драйверов
Связывание контроллеров
контроллеры движения можно привязывать к основному компьютеру с помощью параметров Windows, таких как любое другое устройство Bluetooth.
Изображение: выберите «контроллер движения» для связывания; Если имеется несколько экземпляров, выберите один из них в нижней части списка.
Изображение: контроллеры движения подключены
Если после связывания контроллеры отключены, их состояние будет отображаться как парные. Для контроллеров, которые постоянно находятся в категории «другие устройства», связывание может быть выполнено только частично. В этом случае снова выполните связывание шагов, чтобы получить функциональный контроллер.
Обновление встроенного по контроллера
образ: контроллеры, подключенные в параметрах Bluetooth
Облаками и указание
Приложения, поддерживающие указание с помощью контроллеров движения, должны также включать возможности взаимодействия на основе взгляда, когда это возможно, чтобы предоставить пользователям возможность выбора используемых устройств ввода.
Управление переобмоткой при наведении
При использовании контроллеров движения для указания и фиксации пользователи будут использовать контроллер в качестве целевого объекта и взаимодействовать, изменив его триггер. Пользователи, получившие триггер вигораусли, могут в итоге надежде, что контроллер будет выше в конце своего запроса триггера, чем планировалось.
Чтобы управлять любой такой переброской, которая может возникнуть при изходе триггера пользователями, приложение может привязать его нацеливание, когда значение аналоговой оси триггера превысит 0,0. Затем можно выполнить действия, используя для лучей несколько кадров, после того как значение триггера достигнет 1,0, пока Последнее нажатие происходит в течение короткого промежутка времени. при использовании жеста составного касанияболее высокого уровня Windows будет управлять этим целевым объектом и временем ожидания для вас.
Захват захвата и указание объекта a
Windows Mixed Reality поддерживает контроллеры движения с разными конструктивными факторами, при этом структура каждого контроллера различается в связи между положением пользователя и естественным направлением «вперед», которое приложения должны использовать для указания при подготовке к просмотру контроллера.
Для лучшего представления этих контроллеров существует два вида элементов, которые можно исследовать для каждого источника взаимодействия. захват и указательa.
Подзахват
подсистема захвата представляет собой расположение ручного устройства, обнаруженного HoloLens, или карманного компьютера, который владеет контроллером движения.
Захват захвата определяется в частности следующим образом:
Указатель a
Указатель a представляет кончик контроллера, указывающий на пересылку.
Предоставляемый системой указатель, который лучше использовать для райкаст при отрисовке самой модели контроллера. При визуализации какого-либо другого виртуального объекта вместо контроллера, например виртуального, следует указывать на луч, который наиболее естественным для этого виртуального объекта, например луч, который перемещается на объект модели обойм, определяемой приложением. Так как пользователи могут видеть виртуальный объект, а не физический контроллер, указание виртуального объекта, скорее всего, будет более естественным для тех, кто использует ваше приложение.
Состояние отслеживания контроллера
как и гарнитуры, для контроллера движения Windows Mixed Reality не требуется настраивать внешние датчики отслеживания. Вместо этого контроллеры прописываются датчиками в самой гарнитуре.
если пользователь перемещает контроллеры из поля зрения гарнитуры, в большинстве случаев Windows будет продолжать выводить позиции контроллера и предоставлять их приложению. Когда контроллер потеряет Визуальное отслеживание на достаточно длинном уровне, позиции контроллера будут отбрасываться на позиции приблизительной точности.
На этом этапе система будет блокировать контроллер для пользователя, отслеживая положение пользователя по мере его перемещения, сохраняя при этом ориентацию на уровне true, используя внутренние датчики ориентации. Многие приложения, использующие контроллеры для указания и активации элементов пользовательского интерфейса, могут нормально работать при приближенной точности, не закрывая пользователю.
Явное объяснение состояния отслеживания
Приложения, которые хотят обрабатывать позиции по-разному в зависимости от состояния отслеживания, могут дополнительно проанализировать свойства в состоянии контроллера, такие как Саурцелоссриск и Поситионаккураци:
| Состояние отслеживания | саурцелоссриск | поситионаккураци | трижетпоситион | |||||
|---|---|---|---|---|---|---|---|---|
| Высокая точность | ||||||||
![]() | |
| Рис. 1. | Базовая система управления позиционированием в робототехнике. |
Характерной особенностью любой робототехнической системы является то, что в контур управления включены характеристики механизмов: люфт, механические допуски, вибрация, параметры электродвигателя, момент инерции вращающейся массы, импульс, изгиб механических структур, переменная величина нагрузки и так далее.
По этим причинам важным фактором является выбор наиболее подходящего типа двигателя. Для систем малой и средней мощности выбирают обычно либо бесколлекторные, либо шаговые двигатели постоянного тока.
Еще одно важное решение связано с выбором датчиков обратной связи. В большинстве роботизированных систем используются определенные типы датчиков обратной связи для точного измерения положения рабочего органа и, таким образом, для определения скорости и ускорения (так как скорость является производной по времени от координат объекта, а ускорение – производной по времени от скорости). В качестве преобразователей сигналов обратной связи могут использоваться датчики Холла, синхронные решающие приборы или оптические кодеры.
Несмотря на то, что установить кодер непосредственно на электродвигатель технически проще, такой вариант не позволяет получить достаточно точные актуальные данные о положении рабочего органа вследствие перечисленных выше погрешностей механической системы. По этой причине контрольные датчики необходимо устанавливать как можно ближе к объекту управления.
В некоторых системах промышленной автоматизации реализовано бездатчиковое, так называемое векторное управление электродвигателями, что позволяет снизить стоимость и сложность механической части системы. Алгоритм векторного управления (Field-Oriented Control), используя точные синхронизированные данные тока и напряжения в каждой фазе обмоток двигателя, выполняет сложные преобразования системы координат и матричные вычисления для определения положения двигателя в реальном масштабе времени.
Отсутствие датчиков снижает стоимость оборудования, однако требует значительного увеличения вычислительных возможностей и более сложного программного алгоритма. Во многих случаях разработчики роботизированных систем по-прежнему используют датчики, поскольку векторное управление не обеспечивает такого же уровня достоверности, надежности и устойчивости, какой дает управление на основе прямого считывания сигналов с датчиков.
О конфигурации промышленных роботов
Термин «робот» часто ассоциируется среди публики с мобильным антропоморфным слугой или помощником, однако большинство робототехнических систем предназначено для использования в промышленности и представляет собой стационарные устройства, снабженные различными манипуляторами и другими механизмами для выполнения определенных задач.
К наиболее распространенным конструкциям промышленных роботов относятся:
Представленные выше решения обеспечивают три степени свободы, используя комбинацию линейного и вращательного движений, однако для некоторых приложений достаточно одной или двух степеней свободы. Более совершенные манипуляторы или шарнирные роботы имеют дополнительные линейные и вращательные движения, приближающие способность реагирования и гибкость робота к уровню человеческой руки. Некоторые передовые технологии обеспечивают шесть, восемь и более степеней свободы роботов.
Некоторые варианты роботов используют специальные комбинации линейных и вращательных движений, реализующие специфичные траектории движения, например, параллелограмм. Данный тип робота используется для выполнения точных и быстрых перемещений на короткие расстояния, к примеру, для захвата и установки миниатюрных компонентов.
По мере увеличения числа степеней свободы сложность реализации быстрого, плавного, точного и синхронного перемещения по каждой из координатных осей растет в экспоненциальной прогрессии.
Обзор профилей управления движением
Задача управления движением в робототехнике кажется достаточно простой: привести рабочий орган в конечное положение настолько быстро и точно, насколько это возможно с заданной нагрузкой. Как и во всех инженерных решениях, здесь имеются компромиссы, позволяющие получить оптимальный результат в зависимости от приоритетов, устанавливаемых конкретным приложением. Например, допустимо ли большее ускорение и замедление с целью быстрого достижения высокой скорости с риском возможного перерегулирования или даже колебательного процесса в конечной точке? В какой степени экономически оправдано точное измерение скорости? Как осуществить оптимальный выбор ускорения, скорости и координат для перемещения из положения A в положение B? Каковы приоритеты и параметры, которые определяют «оптимум» в данном конкретном приложении?
Специалисты по управлению движением в области робототехники и в смежных областях разработали стандартные профили, обеспечивающие различные способы реализации компромиссного решения для конкретного приложения. Все без исключения варианты включают в себя значительные по объему вычисления в режиме реального времени на основе текущего набора параметров и сигналов обратной связи, однако некоторые из них требуют еще более высокой точности и большей загрузки вычислительных ресурсов.
Профили управления движением включают в себя:
Сравнение стандартного и пользовательского алгоритмов управления движением
Применение контроллеров управления движением в виде интегральных схем (ИС) со встроенным набором специализированных функций обеспечивает простоту использования и быстрый выход на рынок для стандартных приложений. При необходимости получения нестандартного, настраиваемого профиля, а также при сложной координации между различными осями, возникающей при обработке уникальных нестандартных ситуаций, разработчики могут использовать программируемые контроллеры. Необходимые вычислительные ресурсы при этом обеспечиваются за счет применения в качестве контроллеров цифровых сигнальных процессоров (ЦСП) или программируемых логических интегральных схем (ПЛИС). На выбор конкретного типа контроллера, помимо его аппаратного обеспечения, влияет также наличие поставщиков, программно-аппаратных средств сторонних производителей и доступность готовых программных модулей.
Необходимо отметить, что в контроллерах управления, как правило, отсутствует функция непосредственного управления двигателями (драйверы МОП-транзисторов и БСИТ), что обусловлено двумя причинами. Во-первых, силовые драйверы должны соответствовать типу электродвигателя независимо от выбранного контроллера. Во-вторых, технологические процессы, основанные на комплементарных структурах «металл-оксид-полупроводник», которые используются в цифровых контроллерах для получения высокой плотности элементов, значительно отличаются от техпроцессов изготовления силовых полупроводниковых (п/п) приборов. Однако для управления электродвигателями малой мощности возможна интеграция контроллера с драйверами и силовыми п/п-приборами. Несмотря на фундаментальные различия, термин «контроллер» часто ассоциируется с функциональными блоками устройств силовой электроники, что приводит к путанице при поиске по ключевым словам.
Приведенные далее примеры показывают широкий спектр функций, охватываемых контроллерами управления движением. В качестве примера специализированного функционально законченного устройства можно привести ИС TB6560AFTG производства компании Toshiba, объединяющую в себе контроллер и драйвер шагового двигателя с широтно-импульсным микрошаговым управлением и синусоидальной формой выходного тока. Данная ИС выполнена в 48-выводном корпусе QFN размером 7×7 мм и позволяет реализовать эффективное управление в прямом и обратном направлениях двухфазным биполярным шаговым двигателем с использованием только одного тактового сигнала. Встроенные драйверы обеспечивают ток в обмотках двигателя до 2.5 А. Одной из проблем управления шаговыми двигателями, даже при их использовании в микрошаговом режиме, являются вибрации, которые могут возникать при старте или остановке движения. Хотя в большинстве случаев вибрация не представляет угрозы, она может стать проблемой при работе с хрупкими объектами, например, стеклянной посудой, или при воздействии на собственные резонансы механической системы. Контроллер TB6560AFTG предоставляет пользователю возможность адаптации скорости нарастания и спада выходного тока драйвера для минимизации колебательных процессов.
Верхнюю часть линейки контроллеров управления роботизированными системами занимают устройства с расширенным набором функций, например, семейство микроконтроллеров (МК) C2000 компании Texas Instruments. C2000 представляет собой набор устройств с различными комбинациями базовых функций, вычислительных ресурсов, типов и количества портов ввода-вывода и встроенных аппаратных функций – таймеров, сторожевых таймеров и генераторов импульсов с ШИМ. Например, МК TMS320 Delfino серии C2000 (Рис. 4). Он содержит встроенный модуль для вычислений с плавающей запятой, что позволяет устранить проблемы, возникающие при обработке чисел с фиксированной запятой, а также поддерживает перенос программного кода между устройствами с фиксированной и плавающей запятой посредством виртуального модуля IQMath. Это устраняет необходимость в использовании второго процессора с одним или двумя ядрами, который способен эффективно выполнять как математические задачи цифровой обработки сигналов, так и задачи управления системой. В состав TMS320 также входит модуль вычисления тригонометрических функций (TMU), который ускоряет работу алгоритмов, типичных для контуров управления, например, вычисление крутящего момента.
Разработка приложений для данного процессора обеспечивается программно-аппратными средствами, например, отладочной платой LAUNCHXL-F28377S C2000 Delfino LaunchPad, базирующейся на 32-разрядном ядре процессора TMS320C28x. LaunchPad оснащен МК F28377S, который обеспечивает суммарно 400 млн операций в секунду (MIPS) посредством 200-мегагерцевого центрального процессора C28x и 200-мегагерцевого сопроцессора управления реального времени.
![]() | |
| Рис. 4. | МК TMS320 Delfino серии C2000 производства компании Texas Instruments. |
МК содержит 1 Мбайт встроенной памяти программ и широкий набор периферийных устройств, к которым относятся 16- и 12-разрядные АЦП, компараторы, 12-разрядные ЦАП, фильтры с дельта-сигма-модуляцией, генераторы ШИМ с высоким разрешением, усовершенствованные модули захвата, импульсные квадратурные датчики положения, модули CAN и прочее. Отладочная плата LaunchPad содержит встроенный изолированный эмулятор JTAG XDS100 v2, который позволяет осуществлять посредством порта USB программирование и отладку МК в составе системы в режиме реального времени. Комплект LaunchPad включает в себя также два 40-контактных разъема для подключения одновременно двух плат расширения BoosterPack и бесплатное свободно распространяемое программное обеспечение Code Composer Studio (CCS), интегрированную среду разработки IDE и программные модули controlSUITE.
Заключение
Диапазон контроллеров управления движением для робототехнических систем варьируется от простых узкоспециализированных ИС до МК с высокой степенью интеграции, гибкой архитектурой и большим набором дополнительных функций и программных модулей. Несмотря на то, что фиксированный набор встроенных функций узкоспециализированных контроллеров выглядит как фактор, ограничивающий возможности их применения, некоторые из этих устройств позволяют пользователю выбирать различные профили движения и устанавливать критические параметры. Узкоспециализированные контроллеры адекватны уровню сложности решаемых задач, имеют малую стоимость и просты в использовании. Для сложных проектов с уникальными нестандартными требованиями, а также для более высоких уровней взаимодействия модулей и управления системой эффективным решением являются программируемые МК, поддерживаемые наличием интегрированной среды разработки программ, готовых программных модулей, средств отладки и пакетов программ для аттестационного тестирования.
Статью подготовил и перевел Морозов Вячеслав г. Ростов-на-Дону,
по материалам журнала «Electronics information update».




















