Здесь можно написать вопрос в свободной форме

Как устроены роботы телеприсутствия? Как это работает?

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

С практической точки зрения роботы телеприсутствия стали доступны по цене широкому кругу потребителей благодаря появлению WiFi, 4G/5G, недорогих компьютерных плат с высокопроизводительными процессорами, а также бесплатных программных технологий WebRTC, AJAX, REST, WebSockets, MQTT.

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

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

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

Структурная схема каналов обмена информацией между роботом и оператором

Telepresence robot architecture

Существует два способа передачи информации в интернете: напрямую между двумя абонентами (Peer-To-Peer или P2P) и с посредником в виде промежуточного вебсервера. Видеосвязь практически всегда выполняется в форме P2P, поскольку для передачи видео через сервер требуются огромные вычислительные ресурсы, что сильно повышает стоимость эксплуатации робота. К сожалению, P2P связь осуществима не всегда и в этих случаях всё же приходится использовать промежуточный вебсервер.

Дело в том, что на заре появления интернета никто не мог предположить, что адресного пространства из четырех байт может когда-либо оказаться недостаточно. Но эта ситуация наступила очень быстро и поэтому для расширения адресного пространства в интернете были введены маршрутизаторы, сетевые экраны, серверы доступа, а все компьютеры даже большой организации стали видны из интернета под одним и тем же адресом - адресом маршрутизатора. Чтобы идентифицировать компьютеры, находящиеся внутри локальной сети, была разработана технология сопоставления внутренних адресов локальной сети с внешним адресом, с которым нужно осуществить связь. Эта технология называется NAT (Network Address Translation). Для выполнения P2P связи сначала определяют адреса обоих компьютеров с помощью STUN-сервера (STUN - Session Traversal Utilities for NAT). Услуги предоставления доступа к STUN-серверу обычно являются платными.

В некоторых случаях (их количество составляет несколько процентов) определить адрес с помощью STUN сервера невозможно. В этих случаях используется дорогой TURN-сервер (Traversal Using Relay NAT). Такой сервер работает как переключатель, перенаправляя поток от одного абонента к другому. Видеопоток при этом проходит сквозь сервер, занимая его процессорное время и оперативную память. Поэтому абонентская плата за использование TURN сервера гораздо больше, чем за STUN.

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

Типовой современный робот телеприсутствия содержит планшет, который выполняет функцию видеосвязи и передачи управляющих команд для передвижения робота. Команды из планшета в контроллеры колес передаются обычно через Bluetooth, WiFi или по проводному каналу связи.

В роботе возможно также использовать два компьютера: один из них выполняет функцию видеосвязи, второй управляет движением. Такая архитектура использована в роботе BotEyes. Именно она делает видеосвязь независимой от управления движеним робота и позволяет использовать в роботе любой плаешет и любое средство видеосвязи, например, Skype, Zoom, Hangout, Viber и т.п.

Второй компьютер в роботе BotEyes работает под управлением операционной системы Windows 10 IoT Core. Он также содержит сервис, позволяющий получить доступ к некоторым функциям операционной системы.