СПОСОБ ДИСТАНЦИОННОГО УПРАВЛЕНИЯ МОБИЛЬНЫМ РОБОТОМ ПРИ НАЛИЧИИ ЗАДЕРЖЕК В КАНАЛЕ ПЕРЕДАЧИ ИНФОРМАЦИИ
METHOD FOR REMOTE CONTROL OF MOBILE ROBOT WITH DELAYS IN THE INFORMATION TRANSMISSION CHANNEL

Область техники, к которой относится изобретение
Изобретение относится к области робототехники, а именно к системам дистанционного управления наземными мобильными роботами.
Для наземных мобильных робототехнических комплексов характерно преимущественно использование режима дистанционного управления. Применяемые системы управления в общем случае состоят из пульта управления, бортовой системы управления мобильного робота и связывающего их канала передачи данных, проводного или беспроводного.
В процессе управления человек-оператор постоянно генерирует и отправляет с помощью пульта команды приводам робота, основываясь на получаемой от робота информации, включая видеоизображение с установленных на нем телевизионных камер. Наличие временных задержек передачи информации значительно снижает эффективность выполнения задач. Когда задержки постоянны во времени и достаточно малы (различные экспериментальные данные определяют порог в пределах 200-400 миллисекунд), оператор может к ним адаптироваться, предсказывая результат выполнения своих команд. При увеличении задержек, а также их непостоянстве, оператор, чрезмерно корректируя скорость и направление движения робота, начинает выдавать ошибочные команды. Это снижает эффективность управления, а в некоторых случаях может стать причиной потери устойчивости системы управления.
Временные задержки, возникающие в системе управления, имеют различную природу и могут быть разделены на несколько групп:
- задержки передачи и выполнения команд управления, вызванные временем, необходимым на обработку данных, получаемых с джойстика, передачу информации между электронными узлами пульта, передачу информации по каналу связи, получение и обработку поступивших команд бортовой системой управления. Типичные значения составляют от 50 до 100 миллисекунд;
- задержки передачи видео, определяемые временем, необходимым для получения видеоизображения телевизионной камерой мобильного робота, его обработки, наложения технической информации, цифрового сжатия, передачи по каналу связи, предварительной обработки на пульте и отображения на мониторе. Типичные значения составляют от 200 до 500 миллисекунд в зависимости от типа камер и формата видео;
- задержки, обусловленные применением ретрансляторов сигналов, сетей с ячеистой топологией и пр.;
- задержки, обусловленные использованием в составе системы специализированных модулей, например, блоков криптографической защиты информации;
- задержки, вызванные потерей пакетов между мобильным роботом и пультом управления, требующей повторной передачи данных.
Последние три группы способны оказать существенное влияние на суммарное время задержки в системе управления, не только увеличив его вплоть до единиц секунд, но и сделав непостоянным во времени.
Уровень техники
Существует достаточно большое количество работ, связанных с проблемами управления в условиях действия временных задержек.
Известен способ и система управления, описанные в публикации (Toward safe and stable time-delayed mobile robot teleoperation through sampling-based path planning / Nieto J. [et al.] // Robotica. - 2012. - Vol.30. - No. 3. - Pp.351 - 361. - DOI: 10.1017/S0263574711000695). Предлагаемая схема управления построена на основе вероятностного планировщика пути, который, в сочетании с модулем прогнозирования с переменным временем выборки, позволяет оператору осуществлять управление движением мобильного робота без столкновений с препятствиями при наличии непостоянных временных задержек.
Существенным недостатком технического решения является возможность его использования лишь в структурированной среде при условии применения дальномеров, предоставляющих информацию о расстоянии до объектов-препятствий. Включение дальномеров в состав системы управления усложняет и удорожает ее реализацию.
Для мобильных роботов, действующих в реальной обстановке, основными препятствиями, представляющими угрозу, являются перепады высот, места с неподходящими для движения поверхностями и другие особенности рельефа. Обнаружение таких препятствий с помощью только дальномеров сильно затруднено, а применение интеллектуальных средств технического зрения еще больше усложняет систему управления и не всегда возможно.
Также к недостаткам в данном случае можно отнести повышенный уровень автономности системы. Оператор лишь непрерывно задает цель для планировщика, а управление движением система осуществляет самостоятельно. В некоторых случаях, когда задача заключается не столько в объезде препятствий, сколько в позиционировании робота относительно окружающих объектов, например, для последующей работы манипуляторов, предлагаемый способ может сделать управление менее предсказуемым для человека-оператора.
Известен способ управления мобильным роботом по патенту (Патент US 11173605 В2. Method of controlling mobile robot, apparatus for supporting the method, and delivery system using mobile robot: №16/199,990: заявл. 26.11.2018: опубл. 16.11.2021 / Jin Hyo Kim; заявитель, патентообладатель Dogugonggan Co., Ltd., Gangwon-do (KR)). Способ предусматривает расчет управляющих воздействий на приводы мобильного робота как сумму команд, получаемых от системы прямого управления оператором, и команд модуля автономного управления, включенного в общую систему и работающего параллельно с оператором, взятых с весовыми коэффициентами, определяемыми в зависимости от действующих значений задержки, риска столкновения с препятствиями и сложности окружающей среды.
Основные недостатки способа такие же, как и у описанного выше решения: использование информации о расстоянии до препятствий перед роботом и частичное повышение уровня автономности, способное привести к дезориентации оператора.
Использование модуля автономного управления также значительно усложняет и удорожает реализацию системы управления.
Известен способ и система управления, описанные в публикации (Slawinski Е. Teleoperation of mobile robots with time-varying delay / Slawinski E., Mut V.A., Postigo J.F. // IEEE Transactions on Robotics. - 2007. - Vol.23. -No. 5. - Pp.1071-1082. - DOI: 10.1109/TRO.2007.906249). Способ заключается в непрерывной компенсации влияния непостоянных временных задержек на команды управления линейной и угловой скоростями мобильного робота в процессе движения в среде с препятствиями к заранее заданной цели. Способ основан на использовании информации о текущем состоянии робота и окружающей среды и команд управления, генерируемых оператором, наблюдающим на мониторе пульта задержанные во времени данные об окружении. Способ использует модель оператора и виртуальную силу, зависящую от расстояния до препятствий.
Основным недостатком технического решения является использование заранее известной целевой точки движения и координат робота относительно нее, что значительно уменьшает возможности его практического применения.
Второй недостаток связан с использованием дальномеров и информации о расстоянии до препятствий на пути робота.
Наиболее близким аналогом, выбранным за прототип, является способ управления, известный по патенту (Патент US 2015120048 A1. Control synchronization for high-latency teleoperation: №14/062,632: заявл. 24.10.2013: опубл. 30.04.2015 / Matthew D. Summer, Paul M. Bosscher, Michael J. Summer, Miguel Ortega-Morales; заявитель, патентообладатель Harris Corporation, Melbourne, FL (US)), и заключающийся в следующем. Человек-оператор с помощью пульта управления осуществляет ввод команды, в результате выполнения которой мобильный робот должен изменить свое состояние -ориентацию и положение в пространстве самого робота или звеньев установленного на нем манипулятора. Команду передают роботу по каналу связи, имеющему временные задержки. В обратную сторону, от робота к пульту управления, передают данные телеметрии. В момент получения команды на борту робота производят сравнение текущего состояния с более ранним, сохраненным в памяти и актуальным для момента, которому соответствуют данные телеметрии, представленные на мониторе пульта оператору, когда тот вводил команду. На основе результатов этого сравнения и состояния робота, которое должно было быть достигнуто при отсутствии задержки, команду корректируют, чтобы учесть поправку на задержку. Откорректированная команда исполняется приводами робота. Для определения того, какое состояние должно быть выбрано из памяти для сравнения, способ предусматривает несколько различных вариантов, включая оценку состояния канала связи, уровня сигнала и количество ошибок, передачу вместе с командами оператора и телеметрией специальных пакетов метаданных, маркирующих передаваемую информацию и связывающих ее с соответствующими состояниями робота.
Способ может обеспечить компенсацию влияния временных задержек в канале связи на результаты выполнения команд оператора и управление мобильным роботом в целом, однако имеет ряд существенных недостатков.
В техническом решении не описан способ определения на основе команд оператора локальной цели - положения и ориентации мобильного робота, которое должно было быть достигнуто роботом при отсутствии задержек в канале. Также решение не описывает способ корректировки команд оператора, включающих задание линейной и угловой скоростей, необходимых для достижения локальной цели из текущего состояния.
Предложенный в техническом решении способ сохранения в памяти робота его состояния, включая положение и ориентацию, в том числе описанные с помощью географических координат, ведет к необходимости оснащения мобильных роботов системами геопозиционирования или другими навигационными системами, позволяющими точно определять положение в окружающем пространстве. Использование таких систем усложняет и удорожает реализацию.
Раскрытие сущности изобретения
Задачей, на решение которой направлено изобретение, является повышение эффективности дистанционного управления за счет исключения негативных сторон, присущих известным способам управления с компенсацией временных задержек, а именно:
- исключения необходимости в использовании информации о находящихся перед мобильным роботом препятствиях и соответствующих датчиков, включая дальномеры и системы технического зрения;
- исключения необходимости в использовании информации о положении мобильного робота и целевой точки движения в системе координат, связанной с окружающим пространством, и соответствующих систем навигации и определения положения в пространстве;
- исключения влияния элементов, вызывающих дезориентацию человека-оператора и снижение предсказуемости управления.
Задача решается путем применения способа дистанционного управления, заключающегося во внедрении в программное обеспечение бортовой системы мобильного робота блока компенсации задержек, который, получая команды от пульта управления, корректирует их на основе данных о ранее поступивших командах оператора и текущем состоянии робота.
Подобной корректировке подлежит только угловая скорость, определяющая направление движения. Линейная скорость влияет на качество управления не столь сильно: оператор в большинстве случаев быстро адаптируется и оказывается в состоянии оценить положение робота в окружающем пространстве с учетом задержки даже при ее изменении во времени. Корректировка линейной скорости системой может помешать этой адаптации и сделать управление менее предсказуемым для человека-оператора. С другой стороны, отсутствие необходимости в корректировке линейной скорости мобильного робота позволяет упростить способ и систему управления за счет исключения дополнительных расчетов.
В процессе управления видеокамера непрерывно фиксирует информацию о состоянии окружающей среды и положении в ней мобильного робота. Система управления передает эту информацию на пульт. В блоке компенсации определяют мгновенное значение суммарной действующей временной задержки между моментом фиксации информации и получением бортовой системой команд оператора, сформированных на основе этой информации.
В каждый момент времени на борту вычисляют на основе данных с датчиков приводов и сохраняют в оперативной памяти бортовой системы управления значения линейной и угловой скоростей мобильного робота. Используя локальную систему координат, связанную с текущим состоянием робота (положением и ориентацией), время задержки и данные о действующих на ее протяжении скоростях, с помощью численного интегрирования определяют состояние робота в момент фиксации видеоизображения.
Используя полученные от пульта команды оператора и вычисленные положение и ориентацию робота, определяют координаты локальной цели, в которую оператор хотел привести робота.
С помощью модели оператора вычисляют задание угловой скорости, обеспечивающей движение робота из более раннего, задержанного во времени
состояния, в точку локальной цели. Вычисляют поправку, позволяющую компенсировать индивидуальные особенности оператора, как разницу между командами человека-оператора и модели.
С использованием той же модели рассчитывают задание угловой скорости, обеспечивающей движение робота из текущего состояния в точку локальной цели. Рассчитанное значение корректируют с помощью вычисленной поправки. Полученное откорректированное значение угловой скорости и заданное оператором значение линейной скорости используют для вычисления заданий для приводов робота.
Способ не использует никаких дополнительных систем и датчиков, кроме встроенных в приводы датчиков скорости вращения, с помощью которых вычисляются скорости робота. Корректировка с помощью поправки, учитывающей различие в управлении моделью и человеком, значений угловой скорости, рассчитанных с использованием модели оператора, а также использование неоткорректированного значения линейной скорости, делают управление более предсказуемым для человека-оператора.
Краткое описание рисунков
Сущность изобретения поясняется фигурами 1-3.
На фигуре 1 показана система управления с блоком компенсации задержки. Отмечены:
1 - оператор мобильного робота;
2 - пульт управления;
3 - блок вывода информации;
4 - интерфейс управления;
5 - канал передачи данных;
v
6 - задержка передачи видеоизображения h,
c
7 - задержка передачи команд h;
8 - бортовая система управления робота;
9 - блок датчиков и видеокамер;
10 - блок компенсации задержки;
11 - система управления приводами;
12 - окружающая среда.
Видеоизображение, получаемое с помощью видеокамер 9, передают с помощью канала связи 5 на пульт управления 4. В том же блоке 9 формируется вектор состояния s, представленный значениями скоростей мобильного робота  где  - линейная скорость,  - угловая. Вектор состояния передают в блок компенсации 10.
От пульта управления 4 на блок компенсации 10 поступает вектор управления  представленный командами оператора:  где  - задание линейной скорости,  - угловой.
Откорректированный вектор управления  где  - задание линейной скорости,  - угловой, передают из блока компенсации 10 в систему управления приводами 11.
На фигуре 2 показана ось времени, задержки в системе управления и отмечены:
- текущий момент времени, в котором происходит вычисление заданий для приводов мобильного робота;
- момент времени, в который оператор на основе полученных данных сформировал вектор управления
- момент времени, который оператор видел на мониторе пульта, когда формировал вектор управления;
- задержка передачи видеоизображения;
- задержка передачи команд.
На фигуре 3 показаны положения робота и цели в локальной системе координат:
- вектор текущего состояния робота, принятого за начальное, содержащий координаты робота и угол его поворота;
3
- вектор более раннего состояния, актуального для момента времени t, также содержащий координаты и угол поворота;
- вектор, определяющий локальную цель;
1
3
- линейные скорости робота в моменты времени t и t;
1
3
- угловые скорости робота в моменты времени t и t;
3
- угол поворота робота в момент времени t;
3
- курсовой угол на локальную цель в момент времени t;
1
3
- угловая ошибка в моменты времени t и t.
Осуществление изобретения
Способ управления заключается в следующем.
В первую очередь определяют мгновенное значение действующей задержки. Для этого в процессе дистанционного управления (фигура 1) данные, передаваемые бортовой системой управления 8 и содержащие видеоизображение с телевизионной камеры, маркируют пакетами метаданных, включающими значения внутреннего таймера, которые фиксируют момент времени отправки. Пульт управления 2 при передаче команд оператора маркирует посылки метаданными, полученными с видеоизображением, отображаемым на мониторе в момент формирования команд. На борту робота с помощью, полученной в метаданных информации о моменте отправки видеоизображения определяют мгновенное значение суммарной задержки  как разницу между текущим значением таймера и принятым в посылке (фигура 2).
В некоторых случаях маркировка данных, содержащих видеоизображение, существенно затруднена, например, при использовании аналоговых видеокамер и соответствующих специализированных приемопередатчиков. В этом случае для определения времени задержки могут быть применены другие подходы, включая использование суммы заранее определенного времени передачи видеоданных и рассчитанного с помощью синхронизированных часов пульта и робота времени передачи команд.
1
Для дальнейших расчетов используют систему координат, привязанную к состоянию мобильного робота в момент времени t (фигура 3).
3
В процессе движения мобильного робота в оперативной памяти на борту постоянно сохраняются значения линейной и угловой скоростей  определяемые на основе данных, получаемых с датчиков в составе приводов. На основе этих данных и информации о суммарном времени задержки с помощью численного интегрирования восстанавливают состояние робота в момент t.
Может быть применен любой метод численного интегрирования, включая прямой метод Эйлера. Несмотря на то, что полученная оценка является приближенной, сравнительно короткий интервал интегрирования позволяет считать точность достаточной для дальнейшего ее применения.
3
Используя команды, отправляемые оператором, и вычисленное состояние робота в момент t, определяют координаты локальной цели - точки, в которую оператор хотел направить мобильного робота:
где  - координаты искомой точки,  - коэффициенты, определяющие интервал предсказания угла и расстояния соответственно, зависящие от индивидуальных особенностей оператора. Коэффициенты в общем случае могут быть определены эмпирически для каждого оператора мобильного робота.
3
Далее вычисляют угловую ошибку в момент времени t, определяющую разницу между курсовым углом на вычисленную локальную цель и углом поворота робота:
Так как в используемой локальной системе угол поворота робота в момент времени  нулевой, угловая ошибка в этот момент равна курсовому углу, и ее вычисляют с на основе координат цели:
Для вычисления задания угловой скорости, обеспечивающей движение робота к локальной цели, используют модель оператора, представленную модифицированным законом управления, описанным в (Closed loop steering of unicycle like vehicles via Lyapunov techniques / Aicardi M. [et al.] // IEEE robotics & automation magazine. - 1995. - Vol.2. - No. 1. - Pp.27-35. - DOI: 10.1109/100.388294), из которого исключен член, отвечающий за конечную ориентацию робота:
где  - угловая ошибка,  - эмпирически подбираемые коэффициенты, учитывающие индивидуальные особенности оператора.
1
1
С помощью модели оператора для текущего состояния робота (в момент t) и восстановленного (в момент t) определяют задания угловых скоростей:
3
Вычисляют поправку, определяющую разницу между командами, сформированными человеком-оператором и моделью для момента времени t:
С помощью рассчитанной поправки компенсируют значение  обеспечивающее движение робота из текущего состояния в точку, в которую его хотел направить оператор:
Использование поправки, определенной для момента  при расчете движения в момент  позволяет:
- значительно снизить влияние коэффициентов  на качество управления и избавиться от необходимости их определения для каждого оператора, используя усредненные значения;
- увеличить предсказуемость управления, уменьшая отклонение итоговой траектории движения робота, управляемого системой, реализующей предлагаемый способ, от ожидаемой оператором. Это позволяет дополнительно снизить чрезмерные корректировки оператором курса и тем самым повысить качество управления.
Откорректированный вектор управления формируют из линейной скорости, заданной оператором, и вычисленной угловой скорости:
Эти значения передают дальше в систему управления для вычисления заданий для приводов робота.
Для проверки предложенного способа была создана компьютерная модель и проведен ряд экспериментов. В основу модели положен программный комплекс на основе платформы Unity. В процессе экспериментов оператор управлял с помощью джойстика моделью мобильного робота, осуществляя движение по заранее заданной эталонной траектории, отображаемой на экране. Видео с виртуальной камеры передавали напрямую или с заданной задержкой. Команды так же передавали на модель робота с заданной задержкой. Траектории движения робота в виртуальной среде записывали для последующего анализа. Для оценки эффективности управления использовали время выполнения задания и сходство записанной траектории с эталонной. В качестве меры сходства применяли расстояние Фреше (A comparative analysis of trajectory similarity measures / Tao Y. [et al.] // GIScience & Remote Sensing. - 2021. - Vol.58. - No. 5. - Pp.643-669. - DOI: 10.1080/15481603.2021.1908927).
Результаты моделирования показали, что при отсутствии задержки использование предлагаемого способа не мешает оператору и не оказывает заметного влияния на результаты выполнения задания.
При задержках в пределах половины секунды время выполнения задания различается мало, так как оператор в состоянии достаточно быстро адаптироваться к задержке и в определенных пределах предсказывать результат выполнения команд. При этом траектории, полученные при использовании предлагаемого способа, более гладкие по сравнению с управлением без компенсации задержек и имеют в среднем на 20% меньшие значения расстояния Фреше.
Задержки в одну и две секунды существенно сказываются на качестве управления и приводят к появлению характерных «петель» в траекториях движения. Применение способа позволяет значительно улучшить контролируемые показатели: уменьшить время выполнения задания до 20% и траекторную ошибку до 30%.
Управление при задержках в пять и более секунд уже меньше зависит от использования способа. Это объясняется тем, что оператор интуитивно переходит к стратегии «старт-стоп»: отправляет команду и ждет отображения на мониторе результатов ее выполнения перед отправкой следующей. Такой подход значительно увеличивает время, а в траекториях появляется заметное число прямолинейных участков.
Таким образом, компьютерное моделирование показало, что предложенный способ обеспечивает повышение эффективности дистанционного управления мобильным роботом при наличии временных задержек в каналах управления.