Роботы для склада | Логистическая компания «ABL»

Роботы для склада | Логистическая компания «ABL» Конструкторы

Алгоритмы и исполнители – как пользоваться роботом

Исполнитель ‹‹Робот››


1. Введение

1.1. Обстановки Робота

Исполнитель Робот существует в некоторой обстановке – прямоугольном поле, разбитом на клетки, между которыми могут стоять стены. Обстановка, в которой находится Робот, называется текущей обстановкой Робота. Кроме того, определена еще одна обстановка Робота – стартовая обстановка.Выполнение программы начинается со Стартовой обстановки.

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

Удобно представлять себе, что Робот существует всегда. В частности, когда начинается сеанс работы системы Кумир, Робот уже существует и для него определены и текущая, и стартовая обстановка (они совпадают).

Обстановки Робота могут храниться в файлах специального формата (расширение .fil).

1.2. Окно наблюдения за Роботом

В Кумире есть специальное устройство – Окно наблюдения за Роботом (иногда для краткости будем говорить Окно Роботa). В этом окне всегда видна текущая обстановка Робота, включая положение самого Робота.

1.3. Управление Роботом из программы

Кумир-программа, управляющая Роботом, должна начинаться со строки использовать  Робот (подробнее – см. описание языка Кумир). При выполнении этой строки Кумир помещает Робота в некоторую заранее определенную обстановку. Эта обстановка и называется стартовой обстановкой Робота.

Таким образом, в каждый момент сеанса работы системы Кумир определены две обстановки Робота – текущая и стартовая. Текущая обстановка в любой момент показывается в окне наблюдения за Роботом.

Непосредственное управление Роботом из программы осуществляется с помощью команд Роботa.

1.4. Как установить стартовую обстановку

В системе Кумир есть средства, с помощью которых Школьник может задать нужную ему стартовую обстановку. Это можно сделать двумя способами. Один способ – загрузить стартовую обстановку из указанного Школьником файла. Другой способ – редактировать существующую стартовую обстановку с помощью специального редактора стартовых обстановок.

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

1.5. Ручное управление Роботом

В систему Кумир входит пульт ручного управления Роботом . Этот пульт позволяет вручную управлять Роботом – выдавать команды, входящие в систему команд Робота. Использовать пульт можно в любое время, кроме тех временных промежутков, когда происходит непрерывное выполнение Кумир-программы. В частности, Роботом можно управлять с пульта в те моменты, когда выполнение Кумир программы приостановлено (система Кумир находится в состоянии «Пауза»).

2. Окно наблюдения за Роботом

2.1. Видимое и скрытое состояние окна

Окно наблюдения за Роботом создается в момент начала сеанса работы системы Кумир и доступно до окончания сеанса. Во время сеанса работы окно может находиться в одном из двух состояний – видимо или скрыто (с отображением на панели задач или без).

В момент запуска Кумира окно наблюдения за Роботом скрыто. Чтобы сделать окно видимым, Школьник должен нажать кнопку Робот на панели инструментов или же кликнуть по соответственному пункту меню Окна. Кроме того, окно Робота автоматически становится видимым при запуске на выполнение программы, содержащей строку использовать Робот. Окно Робота становится видимым на том же месте, где оно находилось, когда его последний раз сделали скрытым.

2.2. Свойства окна наблюдения за Роботом

На окне наблюдения за Роботом нет ни меню, ни кнопок. Таким образом, в окне Робота есть только полоса заголовка и рабочее поле.

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

Размер окна наблюдения полностью определяется размерами стартовой обстановки. Пользователь не может менять размер окна с помощью стандартных средств, например, манипулируя мышью.

2.3. Режимы окна наблюдения за Роботом

Окно наблюдения за Роботом может находится в двух режимах:

  • обычном – применяется при наблюдении за Роботом во время исполнения программ или управлении с пульта,
  • редактирования – применяется при редактировании стартовой обстановки Робота.

2.4. Что входит в описание обстановки Робота

Обстановка Робота представляет собой прямоугольное поле, окруженное забором и разбитое на клетки. Говоря более точно, обстановка описывается следующими величинами:

  1. размеры обстановки — количество строк (1–128) и количество столбцов (1–255);
  2. для каждой клетки:
  • наличие стен вокруг клетки,
  • признак закрашенности,
  • уровень радиации (измеряется в условных единицах, может принимать любое вещественное значение от 0 до 99),
  • температура (измеряется в градусах Цельсия, может принимать любое целое значение от -273 до 233).

Примечание. Нижняя возможная температура – это (приблизительно) абсолютный ноль (0 градусов по шкале Кельвина). Верхняя температура – это температура, при которой горят книги (451 градус по Фаренгейту).

Система команд Робота позволяет ему определить значения всех этих характеристик клетки (см. ниже).

Кроме того, в клетке могут быть пометки, видимые наблюдателю, но не доступные «органам чувств» Робота:

  • символы в левом верхнем и левом нижнем углах,
  • точка в правом нижнем углу.

Частью описания обстановки является и положение Робота. Как и для чтения пометок, у Робота нет средств, чтобы определить свои координаты.

2.5. Изображение текущей обстановки в окне наблюдения

Изображение текущей обстановка по умолчанию полностью помещается в рабочем поле окна наблюдения за Роботом .

Фон рабочего поля — зеленый. Закрашенные клетки – серые. Между клетками тонкие жёлтые линии. Стены (в том числе – «забор» по периметру прямоугольника обстановки) изображаются толстыми желтыми линиями.

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

В клетке рабочего поля окна наблюдения Робот изображается ромбиком. Температура и радиация не показываются, они могут быть только измерены Роботом. Символы в клетках, наоборот, видны человеку, но Робот не умеет их считывать.

Масштаб изображения обстановки можно изменить, используя колёсико мыши, предварительно сделав активным окно наблюдения за Роботом.

2.6. Когда и как меняется текущая обстановка Робота

Текущая обстановка изменяется при выполнении команд Робота, подаваемых из программы или с пульта .

Выполнение команд Робота влияет на текущую обстановку следующим образом. Команды перемещения и закрашивания отображаются в текущей обстановке естественно.

Если команда перемещения выдает отказ, то текущая обстановка не изменяется, а на экране (если он виден) соответствующий угол Робота закрашивается красным. Красный цвет снимается:

  • при выполнении команды использовать Робот,
  • при принудительном помещении Робота в стартовую обстановку (см. ниже).

Команды проверок и измерения радиации и температуры на текущую обстановку не влияют.

Кроме того, в двух случаях происходит принудительное помещение Робота в стартовую обстановку (текущая обстановка становится равной стартовой). Это происходит:

  • при запуске Кумир-программы, которая использует Робот (окно наблюдения при этом становится видимым, даже если оно было скрыто);
  • при изменении имени файла стартовой обстановки Робота (в этой ситуации невидимое окно остается невидимым).

3. Команды управления Роботом из программы

3.1. Общие сведения

Кумир-программа, управляющая Роботом, должна начинаться со строки использовать  Робот (подробнее – см. описание языка Кумир). При выполнении этой строки Кумир помещает Робота в стартовую обстановку.

Система команд исполнителя «Робот» включает:

  • 5 команд, вызывающих действия Робота (влево, вправо, вверх, вниз, закрасить);
  • 10 команд проверки условий:
    • 8 команд вида [слева/ справа/ сверху/ снизу] [стена/ свободно],
    • 2 команды вида клетка [закрашена/ чистая];
  • 2 команды измерения (температура, радиация).

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

3.2. Команды-действия

3.2.1. влево

Перемещает Робота на одну клетку влево. Если слева стена, выдает отказ.

3.2.2. вправо

Перемещает Робота на одну клетку вправо. Если справа стена, выдает отказ.

3.2.3. вверх

Перемещает Робота на одну клетку вверх. Если сверху стена, выдает отказ.

3.2.4. вниз

Перемещает Робота на одну клетку вниз. Если снизу стена, выдает отказ.

3.2.5. закрасить

Делает клетку, в которой находится робот, закрашенной.

Ниже приведён пример использования команд-действий Роботa.

3.3. Команды-проверки

3.3.1. слева свободно

Синтаксис:

Возвращает да, если Pобот может перейти влево, иначе – нет.

3.3.2. справа свободно

Синтаксис:

Возвращает да, если Pобот может перейти вправо, иначе – нет.

3.3.3. сверху свободно

Синтаксис:

Возвращает да, если Pобот может перейти вверх, иначе – нет.

3.3.4. снизу свободно

Синтаксис:

Возвращает да, если Pобот может перейти вниз, иначе – нет.

3.3.5. слева стена

Синтаксис:

Возвращает да, если слева от Pобота находится стена, иначе – нет.

3.3.6. справа стена

Синтаксис:

Возвращает да, если справа от Pобота находится стена, иначе – нет.

3.3.7. сверху стена

Синтаксис:

Возвращает да, если сверху от Pобота находится стена, иначе – нет.

3.3.8. снизу стена

Синтаксис:

Возвращает да, если снизу от Pобота находится стена, иначе – нет.

3.3.9. клетка закрашена

Синтаксис:

Возвращает да, если клетка закрашена, иначе – нет.

3.3.10. клетка чистая

Синтаксис:

Возвращает нет, если клетка закрашена, иначе – да.

3.4. Команды-измерения

3.4.1. радиация

Синтаксис:

Возвращает значение радиации в клетке, где находится Pобот.

3.4.2. температура

Синтаксис:

Возвращает значение температуры в клетке, где находится Pобот.

4. Стартовая обстановка, ее изменение и связь с текущей обстановкой

4.1. Вводные сведения

Стартовая обстановка – это обстановка, в которую Робот будет помещен при запуске Кумир-программы, т. е. при выполнении команды использовать Робот.

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

4.2. Как определяется стартовая обстановка

Как правило, стартовая обстановка — это обстановка, хранящаяся в файле стартовой обстановки (для краткости – ФСО).

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

Другое исключение связано с возможностью упрощенного внесения временных изменений в стартовую обстановку. А именно, если в данный момент в Кумир-системе происходит редактирование файла обстановки, то текущее промежуточное значение этой редактируемой обстановки считается временной стартовой обстановкой. Иными словами, действия пользователя по подготовке обстановки имеют приоритет над содержимым строки с именем ФСО.

4.3. Изменение имени файла стартовой обстановки

Общие сведения

Школьник может изменить файл стартовой обстановки (ФСО) двумя способами:

  • с помощью команды «Загрузить обстановку» меню Робота,
  • с помощью редактора стартовых обстановок.

Состояние окна наблюдения (видимо/скрыто) при этих действиях не меняется.

При изменении строки с именем ФСО, новая стартовая обстановка становится текущей, что отражается в окне наблюдения за Роботом.

Команда «Загрузить обстановку»

Изменение строки с именем ФСО происходит с помощью стандартного диалога выбора файла. При этом в качестве каталога по умолчанию предлагается каталог текущего файла стартовой обстановки. Если выбранный файл существует и содержит корректную обстановку, то эта обстановка считается стартовой. Она же объявляется текущей, т. е. Робот помещается в эту обстановку. Это отображается в окне наблюдения Робота. Имя файла стартовой обстановки (без директории) показывается в левой части заголовка окна наблюдения за Роботом.

Если с чтением обстановки из выбранного файла возникают какие-либо проблемы, пользователю выдаётся сообщение ‹‹Ошибка открытия файла››. При этом ни стартовая, ни текущая обстановки Роботa, а также имя ФСО не изменяются.

Изменение стартовой обстановки с помощью редактора стартовых обстановок Робота

Редактор стартовых обстановок Робота – составная часть системы Кумир. Он позволяет добавлять и удалять стены, менять размеры обстановки и т. п. Изменённая обстановка объявляется стартовой. Её можно сохранить в новый файл, а можно перезаписать текущий .

4.4. Создание новой стартовой обстановки

Для создания новой стартовой обстановки Робота нужно воспользоваться коммандой «Новая обстановка» меню Робот. При этом откроектся специальное окно, где можно будет ввести размер обстановки. После настройки размера и нажатия кнопки «Ок», новая обстановка сразу открывается в режиме редактирования .

4.5. Начальная установка имени файла стартовой обстановки

Запуск системы Кумир

Система Кумир при окончании сеанса работы запоминает в своих настройках значение имени файла со стартовой обстановкой. При новом запуске система Кумир проверяет, существует ли файл с запомненным именем. Если файл существует и содержит корректную обстановку, то эта обстановка считается стартовой. Она же объявляется текущей, т. е. Робот помещается в эту обстановку. Это отображается в окне наблюдения Робота. Имя файла стартовой обстановки (без директории) показывается в левой части заголовка окна наблюдения за Роботом.

Если с чтением обстановки из выбранного файла возникают какие-либо проблемы, то стартовой (и одновременно текущей) объявляется стандартная обстановка, хранящаяся в Кумире. В левой части заголовка окна наблюдения за Роботом появляется предупреждающая надпись – «нет файла». Никакой файл с обстановкой при этом не создается, а предыдущее значение имени файла стартовой обстановки не изменяется.

Установка имени файла стартовой обстановки при инсталляции системы Кумир

При инсталляции системы Кумир в качестве имени ФСО записывается имя файла со стандартной обстановкой, который входит в поставку Кумира (7×7.fil). Стандартной обстановкой является пустая обстановка размера 7×7 с Роботом в левом верхнем углу. Максимально допустимый размер обстановки составляет 128×255. Слово «пустая» означает:

  • в обстановке нет стен (кроме проходящего по периметру забора),
  • в клетках нет точек и символов,
  • во всех клетках радиация и температура установлены в 0.

5. Редактирование стартовой обстановки

5.1. Общие сведения

Редактор стартовых обстановок можно использовать:

  • для подготовки новых обстановок,
  • при отладке Кумир-программ для оперативного внесения небольших изменений в стартовую обстановку.

Запуск редактирования производится с помощью команды ‹‹Редактировать обстановку›› меню Роботa. По этой команде окно наблюдения переходит в специальный режим – режим редактирования стартовой обстановки (для краткости – режим редактирования). Завершить редактирование обстановки можно двумя способами:

  • снять галочку с пункта Редактирование меню Робота,
  • запустить на исполнение любую Кумир-программу, использующую Робот. Тогда окно наблюдения снова перейдёт в обычный режим.

В обоих случаях результаты редактирования сохранятся и стартовая обстановка Робота изменится.

Свойства окна наблюдения в режиме редактирования аналогичны свойствам окна наблюдения за Роботом. Основных отличий – два:

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

5.2. Главное меню окна наблюдения в режиме редактирования

Кнопки редактирования обстановки

Опишем кратко назначение кнопок редактирования обстановки по порядку слева направо.

  • Кнопка редактирования меток клетки. При нажати на эту кнопку в каждой клетке появляются два поля для ввода текста меток (одно вверху клетки, одно внизу). В каждое из этих полей можно ввести только один символ.
  • Кнопка редактирования уровня радиации. При нажати на эту кнопку справа от кнопок настройки появляется поле для редактирования уровня радиации в клетке. Значение по умолчанию в этом поле равно 55,00. Это значение можно изменять, кликая на верхний или нижний треугольник в этом поле. Также можно ввести своё собственное значение. Уровень радиации в клетке может колеблется в диапазоне от 0,00 до 99,00. После получения нужного числа в поле настройки уровня для применения настроек к выбранной клетке нужно просто кликнуть по ней левой кнопкой мыши.
  • Кнопка редактирования уровня температуры. Механизм редактирования температуры в клетке поностью аналогичен механизму редактирования уровня радиации. Значение по умолчанию в поле редактирования температуры равно 77. Температура в клетке может колебаться от -273 до 233.

5.3. Непосредственное редактирование обстановки

Основное редактирование обстановок Робота ведется непосредственно. Предусмотрены следующие операции непосредственного редактирования:

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

5.4. Операции с файлами обстановок

Перечислим все операции с файлами обстановок (расширение .fil), предусмотренные в системе Кумир. Соответствующие им команды входят в меню «Робот» главного окна (команды «Сохранить обстановку» и «Загрузить обстановку»).

Система Кумир запоминает файлы, к которым применялись указанные операции. Список последних таких файлов доступен с помощью команды «Недавние обстановки» меню «Робот». Во всех перечисленных ниже операциях с файлами обстановок в качестве директории по умолчанию предлагается директория, использовавшаяся в последней по времени выполнения операции с файлами обстановок.

6. Пульт Робота

6.1. Общие сведения

Пульт Робота располагается в отдельном окне и предназначен для управления Роботом. С помощью пульта можно передавать команды Роботу. Он непосредственно выполняет эти команды.

Пользоваться пультом можно как при видимом окне наблюдения за Роботом, так и когда это окно скрыто (управление Роботом вслепую).

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

Окно Пульта создается при запуске системы Кумир. Свойства окна таковы:

  • при запуске системы КуМир пульт скрыт,
  • пользователь не может менять размеры окна пульта,

Чтобы сделать пульт видимым, нужно воспользоваться командой «Робот-Пульт» меню «Робот» или соответствующей инструментальной клавишей.

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

6.2. Общий вид Пульта

На пульте Робота есть:

  • лампочки-индикаторы:
    • зелёная лампочка-индикатор Связь установлена ,
    • красная лампочка-индикатор Нет связи ;
  • табло для семи последних выполненных команд, разделенное на левую часть (собственно команда) и правую часть (реакция Робота);
  • вспомогательные кнопки табло:
    • Сброс табло и Скопировать в буфер – кнопки очистки и копирования, находящиеся справа от табло,
    • Прокрутка табло – две кнопки сверху и снизу;
  • кнопочная панель из 9 кнопок, служащая для передачи команд Роботу.

6.3. Кнопочная панель. Передача команд Роботу

На панели есть:

  • 4 кнопки-стрелки (они соответствуют командам передвижения Робота);
  • кнопка закрасить (в центре);
  • кнопки температура и радиация (в левом верхнем и левом нижнем углах);
  • две кнопки-префикса Стена/Закрашено и Свободно/Чисто (в правом верхнем и левом нижнем углах);

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

Чтобы передать команду проверки нужно последовательно нажать две кнопки: сначала – префикс ( Стена/Закрашено и Свободно/Чисто ), а потом — основную (закрасить или одну из стрелок).

Примеры:

  1. Чтобы передать Роботу команду проверки слева свободно? нужно сначала нажать кнопку-префикс Свободно/Чисто , а затем кнопку влево .
  2. Чтобы передать Роботу команду проверки клетка закрашена? нужно сначала нажать кнопку-префикс Стена/Закрашено , а затем кнопку закрасить .

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

6.4. Использование табло

На табло выводятся все команды, передаваемые Роботу вместе с реакцией Робота на эти команды. В ответ на команды перемещения в правой части появляется надпись «ОК» или «Отказ». Если с Роботом нет связи, на табло выдается «Нет связи».

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

7. Робот и главное меню

7.1. Общие сведения

К Роботу относится меню Робот главного окна системы «Кумир» (полностью), а также две команды из меню Окна . Для действий Показать поле Робота и Пульт Робота есть инструментальные кнопки на панели кнопок.

Ниже отдельно описана каждая из команд меню Робот .

7.2. Команды меню «Робот»

  • Загрузть обстановку – открывает диалог выбора ФСО.
  • Недавние обстановки – выводит список последних использовавшихся ФСО.
  • Вернуть исходную обстановку – делает текущей стартовую обстановку.
  • Сохранить обстановку – открывает диалог сохраниения обстановки в файл.
  • Редактировать обстановку – переводит окно наблюдения в режим редактирования стартовой обстановки.
  • Авто размер окна – устанавливает масштаб отображения обстановки по умолчанию.
  • Новая обстановка – открывает окно создания обстановки.

7.3. Команды меню «Окна»

  • Робот – открывает окно наблюдения за исполнителем Робот.
  • Робот – Пульт – открывает окно пульта исполнителя Робот.

Copyright ФГУ ФНЦ НИИСИ РАН © 2023

Движение робота к точке с заданными координатами

Приветствуем вас, уважаемые хабравчане!

Наш научный коллектив, который носит название Студенческого конструкторского бюро кафедры СУиИ Университета ИТМО, продолжает разработку курсов по робототехнике, и хочет поделиться одним из последних проектов на Lego NXT.

Ранее мы публиковали курс «Практическая робототехника»на NXT. Сейчас этот курс используется для обучения студентов на кафедре, и на площадке «Открытое образование». Так же публиковались фрагменты этого курса с подробным описанием действий для идентификации модели двигателя и расчета регулятора для робота Segway.
В этот раз было решено реализовать объезд препятствий роботом с дифференциальным приводом. Конструкция робота достаточно простая: два колеса с двигателями, гироскоп и пара ультразвуковых датчиков. Для оценки пройденного расстояния используются энкодеры на валу двигателя, для ориентации робота, измеряется гироскопом его угловая скорость и рассчитывается угол поворота, а расстояние до препятствия измеряется ультразвуковыми дальномерами.
Роботы для склада | Логистическая компания «ABL»

Стоит отметить, что на рисунке указано Роботы для склада | Логистическая компания «ABL» — расстояние до целевой точки; Роботы для склада | Логистическая компания «ABL» — азимут, угол между осью OX и направлением на цель; Роботы для склада | Логистическая компания «ABL» — курс робота; Роботы для склада | Логистическая компания «ABL» — курсовой угол, разность между курсом и азимутом; v — линейная скорость робота. Робот перемещается за счет движения двух отдельно управляемых колес. А такая кинематическая схема имеет определенное математическое описание:
Роботы для склада | Логистическая компания «ABL»
где Роботы для склада | Логистическая компания «ABL» – соответствующие угловые скорости вращения колес, x, y – соответствующие координаты, R – радиус колеса, B – расстояние между колесами.

В принципе движение в точку с заданными координатами можно решить использованием П-регулятора, но на практике этого будет недостаточно. Хотя в модели, представленной ниже все работает просто замечательно:
Роботы для склада | Логистическая компания «ABL»

Задача ставится следующим образом: робот должен достигнуть заданных координат Роботы для склада | Логистическая компания «ABL».
При решении задач навигации мобильных роботов используются два основных подхода.

Существует множество методов локальной навигации, например, такие как:

  • гистограмма векторного поля Borenstein & Koren 1991;
  • потенциальное поле Khatib, 1986; Rubagotti, Vedova,& Ferrara, 2023;
  • диаграмма близких расстояний Minguez & Montano, 2004;
  • тангенциальное избегание Ferreira, Pereira, Vassallo, Filho and Filho, 2008.

Остановимся подробнее на последнем методе. Поискав в сети информацию о способах управления подобным роботом, можно найти

статью

профессора кафедры теоретической кибернетики СПбГУ Матвеева А.С. и профессора Савкина А.В. из Университета Нового Южного Уэльса, Сидней, Австралия об алгоритме навигации робота среди движущихся и деформируемых препятствий. В статье авторы утверждают, что наиболее подходящим методом для решения нашей задачи является, собственно, метод тангенциального избегания, описанный профессором Федерального универститета Эспиринту-Санту, Витория, Бразилия Марио Сарцинелли, с которым мы имели честь познакомится во время

поездки нашей команды в Бразилию

.

Для начала опишем математическую модель, описывающую навигацию робота к цели, в полярных координатах:
Роботы для склада | Логистическая компания «ABL»

Фактически, робот может полностью управляться с помощью значений угловой и линейной скорости Роботы для склада | Логистическая компания «ABL», поэтому нужно найти такие их значения, чтобы выполнялось условие поставленной задачи Роботы для склада | Логистическая компания «ABL». Для этого в статье предлагается воспользоваться аппаратом функции Ляпунова. Это будет квадратичная функция, включающая в себя расстояние до цели и курсовой угол:
Роботы для склада | Логистическая компания «ABL»

Производная по времени должна быть не положительна для того, чтобы расстояние до цели и курсовой угол не возрастали. Производная выглядит следующим образом:
Роботы для склада | Логистическая компания «ABL»

Выразив производную через математическую модель, предложенную выше, получаем:
Роботы для склада | Логистическая компания «ABL»

Эта производная отрицательно определена, если мы выберем в качестве управляющего воздействия следующие значения скоростей:
Роботы для склада | Логистическая компания «ABL»

Все это позволит роботу достичь своей цели, но пока лишь в отсутствии препятствий. Для избегания препятствий необходимо внести поправку в вычисление курсового угла:
Роботы для склада | Логистическая компания «ABL»
где Роботы для склада | Логистическая компания «ABL» – коэффициент пропорциональной составляющей курсового угла, Роботы для склада | Логистическая компания «ABL» – расстояние до препятствия, Роботы для склада | Логистическая компания «ABL» – минимальное расстояние до препятствия.

С помощью вышеизложенного метода была реализовано движение из точки в точку с объездом препятствий. Результаты представлены на видео, погрешность обусловлена проскальзыванием колес.

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

Ниже приведен пример итоговой программы на си-подобном языке NXC:

Код программы
#define RAD_WHEEL 0.028 // радиус колес
#define DEG2RAD PI / 180
#define LEFT OUT_C
#define RIGHT OUT_B
#define GYRO S1
#define LIMIT 20 // предельное растояние до препятствия
#define K_I 50 // коэффициент интегральной составляющей линейной скорости
#define K_P 0.1 // коэффициент пропорциональной составляющей курсового угла
#define ERROR 0.03 // точность достижения целевой точки

task main() {
    int     rotA, rotB, // показания энкодеров
            pwmLeft, pwmRight, // ШИМ для управления
            distS3, distS2, distMax, kDist, // ошибки расстояния до препятствия
            currentTime, previousTime, dt, // время
            gyroSpeed, gyroOffset, // угловая скорость с гироскопа и ее калибровка
            fileSize = 30640;

    float   course, courseAngle, bearing, // курс (psi), курсовой угол (alpha), пеленг (theta)
            xCoord, yCoord, // координаты точки между колесами
            delthaX, delthaY, // отклонения
            length, intLength, // длина оставшегося пути, интеграл длины
            path, prevPath, delthaPath, // путь пройденный точкой между колесами
            xRef = -1, yRef = 0, // координаты точки назначения
            baseSpeed = 0, control = 0, // линейная и угловая скорость
            k = 20;

    string  s; // строка для формирования вывода

    byte    handle;

    // инициализация датчиков
    SetSensorLowspeed(S2);
    SetSensorHTGyro(GYRO);

    // создание файла для записи данных, задержка
    DeleteFile("data.txt");
    CreateFile("data.txt", fileSize, handle);
    Wait(50);

    // калибровка гироскопа, угловая скорость (град/сек)
    gyroOffset = SensorHTGyro(GYRO);

    course = 0;
    previousTime = CurrentTick();

    while (true) {
        // измерение ошибки расстояния до препятствия
        distS3 = LIMIT - SensorUS(S3);
        distS2 = LIMIT - SensorUS(S2);

        // определения положения препятствия (с какой стороны робота, далеко ли от него)
        if (distS3 < 0 ) distS3 = 0;
        if (distS2 < 0 ) distS2 = 0;
        if (distS2 > distS3) distMax = distS2;
        else distMax = distS3;
        kDist = sign(distS2 - distS3);

        currentTime = CurrentTick();
        dt = currentTime - previousTime;
        previousTime = currentTime;

        // получение угловой скорости (град/сек)
        gyroSpeed = SensorHTGyro(GYRO) - gyroOffset;
        // расчет курса
        course = course   gyroSpeed * PI * dt / 1000.0 / 180.0;

        // снятие показаний энкодеров с двигателей
        rotA = MotorRotationCount(LEFT);
        rotB = MotorRotationCount(RIGHT);

        // расчет пути пройденного точкой между колесами
        path = (rotA   rotB) * DEG2RAD * RAD_WHEEL / 2;

        // путь пройденный за один цикл программы
        delthaPath = path - prevPath;

        // сохранение предыдущего значения длины пути
        prevPath = path;

        // вычисление координаты X
        xCoord = xCoord   delthaPath * cos(course);

        // вычисление координаты Y
        yCoord = yCoord   delthaPath * sin(course);

        // вычисление отклонения по X
        delthaX = xRef - xCoord;

        // вычисление отклонения по Y
        delthaY = yRef - yCoord;

        // расчет пеленга
        bearing = atan2(delthaY, delthaX);

        // расчет курсового угла
        courseAngle = bearing - course - K_P * kDist * distMax;

        // разворот по кратчайшему углу
        if (abs(courseAngle) > PI) courseAngle = courseAngle - sign(courseAngle) * 2 * PI;

        // расчет расстояния до точки
        length = sqrt (delthaY * delthaY   delthaX * delthaX);
        intLength = intLength   length * dt / 1000;
        if (intLength > 10) intLength = 10;

        // расчет линейной скорости
        baseSpeed = 100 * tanh (length) * cos (courseAngle)   K_I * intLength;
        if (abs(baseSpeed) > 40) baseSpeed = sign (baseSpeed) * 40;

        // расчет угловой скорости
        control = k * courseAngle   sin(courseAngle) * baseSpeed / length;

        // насыщение управляющего воздействия
        if (abs(control) > 30) control = sign(control)*30;

        // преобразование управления из float в integer, ШИМ в процентах
        pwmLeft = baseSpeed   control;
        // преобразование управления из float в integer, ШИМ в процентах
        pwmRight = baseSpeed - control;

        if (abs(pwmLeft) > 100) pwmLeft = sign (pwmLeft) * 100;
        if (abs(pwmRight) > 100) pwmLeft = sign (pwmRight) * 100;

        // подача управления
        OnFwd(LEFT, pwmLeft);
        OnFwd(RIGHT, pwmRight);
        ClearScreen();

        // вывод значений на экран NXT
        NumOut(0, 8, distS3);
        NumOut(0, 0, distS2);

        // создание строки с данными
        s = NumToStr(xCoord)   " "   NumToStr(yCoord)   " "   NumToStr(bearing)   " "   NumToStr(course);

        // запись в файл
        WriteLnString(handle, s, fileSize);

        // выход при достижении области точки
        if(abs(length) < ERROR) {
            Off(OUT_BC);
            break;
        }
        Wait(5);
    }
}

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

Робототехнические системы –

До сих пор у многих роботы ассоциируются с железными человекоподобными существами из фантастических фильмов и романов Айзека Азимова. Однако развитие современной робототехники шагнуло далеко вперед. В ритейле можно увидеть совершенно разных роботов: от говорящих колонок до «умных» касс. Они все активнее вступают в ряды работников розничной и электронной торговли. Мировые лидеры отрасли тестируют роботов для решения различных задач: от общения с покупателем до доставки товара.

Amazon открывает магазины без кассиров, где стоимость товаров автоматически списывается с карты клиента, а также активно внедряет робототехнику на складах. Walmart запатентовал тележку, которая сопровождает покупателя в магазине и дает ему советы по выбору товара. Американская сеть дисконтных товаров Target использует роботов для отслеживания количества товаров на полках и корректности ценообразования.

В российской розничной торговле число проектов с участием роботов пока ощутимо меньше. По данным Национальной ассоциации участников рынка робототехники (НАУРР), плотность роботизации в России в 70 раз ниже, чем в целом по миру. Для примера: в 2023 году в мире на 10 тысяч работников в среднем приходилось 69 промышленных роботов, в то время как в нашей стране – всего один.

Однако отдельные российские компании разрабатывают и относительно успешно продают сервисных роботов. Например, Alfa Robotics (Москва) разработала антропоморфного робота-промоутера KiKi для работы с клиентами супермаркетов и торговых центров. Пермская компания Promobot выпускает роботов с поддержкой речевого общения, которых уже начала использовать в своих магазинах сеть «Лента».

Роботы для склада | Логистическая компания «ABL»

По данным международной консалтинговой компании CBRE, к 2030 году автоматизация и робототехника изменят количество рабочих мест в ритейле: машины придут на смену продавцам и кассирам.

«Роботизация, то есть замена ручного труда машинным, связана с активным развитием искусственного интеллекта», – считает Дмитрий Красюков, заместитель генерального директора SAP CIS. Проекты роботизации в ритейле направлены на улучшение работы с покупателями и оптимизацию внутренних бизнес-процессов. Условно такие проекты можно разделить на три типа – в зависимости от решаемых задач:

• Автоматизация рутинных операций.
• Помощь в принятии решений.
• Контроль.

Роботы в логистике

Одна из сфер, в которой на Западе уже задействованы роботы – это доставка товаров. Для передвижения по воздуху используются беспилотные летательные аппараты, по земле – роботы-курьеры.

В 2023 году двое эстонцев, создателей мессенджера Skype – Янус Фриис и Ахти Хейнла – основали компанию Starship Technologies. Спустя год фирма представила первую разработку – уличного робота-доставщика.

Роботы для склада | Логистическая компания «ABL»

Робокурьер выглядит как платформа на шести колесах и может вмещать грузы весом до 18 кг. Он способен автономно передвигаться по тротуару, объезжая препятствия и пешеходов. Об интересе к новинке уже заявили такие ритейлеры, как Metro Group, Hermès и Domino’s Pizza.

Роботы-курьеры позволяют сократить время доставки и расходы так называемой «последней мили».Например, доставка курьером в центре Лондона стоит в районе $15, в то время как робот Starship уменьшает сумму до $1.2.

Пионером использования беспилотников в торговле считается американский онлайн-ритейлер Amazon. Компания запустила коммерческую доставку грузов при помощи дронов в декабре 2023 года в Великобритании. Первым клиентом стал житель пригорода Кембриджа, заказавший пакет попкорна и игровую приставку – он получил свои товары за 13 минут.

В последние годы Amazon активно развивает проект Prime Air, предполагающий создание транспортной воздушной сети для доставки заказов. В проекте используются дроны длиной около метра, способные доставлять грузы весом до 2,4 кг. Полет происходит автономно – беспилотником управляет встроенная электроника.

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

Роботы для склада | Логистическая компания «ABL»

Дрон транспортной компании DPD в Европе перевозит грузы весом до 3 кг на расстояние до 20 км. Устройство оснащено GPS, системой навигации и камерой, которая в режиме реального времени передает данные и ведет запись полета. В целях безопасности в беспилотник встроена резервная электроника и парашют, который раскрывается при резком снижении. Устройство самостоятельно взлетает, приземляется и возвращается на базовую станцию.

В российском ритейле примеры использования роботов-курьеров пока единичны. Летом 2023 года «ДоДо Пицца» запустила доставку заказов при помощи дронов в Сыктывкаре. Однако вскоре получила предупреждение от властей: компании пригрозили штрафом. По мнению Госавианадзора, коммерческое использование беспилотников попадает под статью 11.4 КоАП РФ «Нарушение правил использования воздушного пространства».

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

«В нашей стране использование дронов не вышло из стадии эксперимента, не в последнюю очередь, из-за отсутствия госрегулирования, — комментирует Наталия Тишкова, директор департамента обслуживания клиентов DPD в России. – И в ближайшие годы ситуация останется без изменений. Но в отдаленном будущем автоматизированные системы доставки будут играть все более значительную роль в мировой логистике, в том числе и в России».

Складские роботы

В настоящее время есть несколько видов складских роботов, а также комплексные решения для автоматизации складов с использованием разных типов робототехники.

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

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

Складских роботов активно используют гиганты мирового ритейла. Amazon начал применять робототехнику в 2023 году: это были механизмы для перемещения палет от Kiva Systems. Спустя 2 года компания купила разработчика и переименовала его в Amazon Robotics. По данным на конец 2023 года, в филиалах компании по всему миру работало более 100 тысяч роботов.

Роботы для склада | Логистическая компания «ABL»

При этом компания смогла обойтись без сокращения складских сотрудников: теперь они управляют работой своих «автоматических коллег». Благодаря роботизации складов Amazon значительно сократил время доставки товара: клиент может сделать заказ утром и получить его до обеда.

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

Роботы для склада | Логистическая компания «ABL»

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

Когда ритейлер Target решил расширить распределительный центр в Калифорнии, Symbotic предложила технологическое решение, с помощью которого не понадобилось строительство дополнительных складов. В отличие от привычных складских комплексов, где товар хранится в определенном месте, роботы Symbotic помещают коробки на любые свободные места стеллажей – это экономит пространство. Найти товар легко, поскольку технология запоминает расположение. Решением впоследствии заинтересовался Walmart.

«В России вопрос полной автоматизации склада пока остается открытым с точки зрения экономической целесообразности, — считает Георгий Иващенко, руководитель проектов направления «аутсорсинг в логистике» ГК VENTRA. – Экономическая ситуация не способствует созданию дорогостоящих, а главное, не универсальных складских решений с длительным сроком амортизации.

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

«Сегодня одна из самых зрелых и перспективных областей для роботизации в этой сфере – концепция «темного склада», — говорит Дмитрий Красюков, заместитель генерального директора SAP CIS. – Это полностью автономный объект, в котором роботы работают одни в темноте, что, помимо прочего, сокращает расходы на электричество».

Роботы в торговых залах

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

Роботы-консультанты показывают, где находится товар на полке, или дают советы на основании покупательского опыта. Такой помощник уже работает с посетителями американской сети товаров для дома Lowe’s.

Робот Tally производства американской фирмы Simple Robotics автоматизирует процесс ревизии полок супермаркетов. Он отслеживает наличие товара и правильность указанных цен. На проверку стандартного супермаркета у робота уходит всего час, что намного меньше, чем при выполнении задания «живыми» сотрудниками.

В сентябре 2023 года сеть Zara запустила роботизированный пункт выдачи онлайн-заказов. Он оборудован терминалом с сенсорной панелью и сканером QR-кодов. Покупатель получает код при оформлении заказа на сайте. По этим данным система находит покупку и выдает клиенту.

Сеть гипермаркетов «Лента» в ноябре сообщила о запуске совместного проекта с компанией Promobot. Сервисные роботы будут работать в нескольких магазинах «Ленты», рассказывая покупателям об акциях и скидках на товары. Они могут свободно передвигаться по залу и узнавать клиентов благодаря функции распознавания лиц.

Российская компания Alfa Robotics специализируется на производстве коммерческой робототехники. Флагманский продукт – робот с расширенным функционалом вербального и невербального общения KIKI. Робот-промоутер может работать в торгово-развлекательном комплексе: встречать посетителей и провожать их в нужные отделы, знакомить с товарами и услугами, сообщать о скидках и развлекать детей. Также компания производит и продает роботизированную кассу самообслуживания ARC 70 с интерактивным голосовым общением, которая может распознавать лица и типы товаров по образу.

«Сервисная робототехника переживает этап развития и роста, – считает Владимир Венеров, генеральный директор Alfa Robotics. – Это подтверждает исследование международной федерации International Federation of Robotics: в своих прогнозах они обещают в ближайшие год-два увеличение количества сервисных роботов в 10-15 раз. Имеются в виду роботы, которые общаются с человеком. Ожидается, что активно робототехника будет применяться в таких сферах, как ритейл, отельный и ресторанный бизнес, event-мероприятия».

«И, хотя эта сфера развивается, рынок продаж только формируется, – уточняет Владимир Венеров. – Пока идет взаимная «пристрелка» потенциальных потребителей и производителей робототехники, оцениваются возможности и потребности. Как и в любой новой развивающейся технологии, неизбежны перекосы. С одной стороны, в виде завышенных ожиданий, с другой стороны – невозможности их реализации. Например, отельеры хотят, чтобы один робот выполнял множество функций: прием гостей, чек-ин, чек-аут, разнос вещей, глажка белья, заваривание кофе или чая. Все это можно роботизировать, но на каждую задачу потребуется свой робот».

Голосовые помощники и чат-боты

По данным The Gartner, уже через 2 года 30% поисковых запросов станут голосовыми. Этому будет способствовать рост популярности «умных» динамиков, таких как Google Home, Apple HomePod и их аналогов. По официальной информации Amazon, во время новогодних распродаж прошедшего года были куплены миллионы интеллектуальных домашних устройств Echo Dots с голосовым помощником Alexa.

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

Роботы для склада | Логистическая компания «ABL»

В конце 2023 года Google и сеть магазинов Target объявили о сотрудничестве в сфере доставки товаров на всей континентальной части США. Клиенты могут сделать заказ посредством колонки Google Home и получить его домой или в офис. Таким образом продавцы пытаются бороться с активной экспансией Amazon.

Пока большинство «умных» колонок понимают только англоязычную речь, поэтому мало востребованы среди российских потребителей. Однако недавно Яндекс сообщил о разработке собственного смарт-динамика, ориентированного на пользователей из РФ. За коммуникацию с владельцем в нем будет отвечать голосовой помощник Алиса.

«Разговорные роботы», в основе которых лежит технология распознавания и синтеза речи, уже используются российскими компаниями. Так, в колл-центре компании DPD трудится робот Юля. Изначально Юля совершала исходящие звонки, информируя получателей о статусе доставки. С осени робот отвечает и на входящие вызовы.

«Благодаря Юле мы смогли повысить доступность и эффективность работы контактного центра без увеличения штата специалистов, – комментирует Наталия Тишкова, директор департамента обслуживания клиентов DPD в России. – В декабре Юля сделала 28% исходящих звонков, в январе – уже 30%, входящие звонки: в декабре 24% и 28% в январе. Оставшуюся часть обрабатывали операторы. Результатами довольны, планируем внедрить такого же сотрудника в Казахстане и в Беларуси».

Чат-боты – это компьютерные программы, способные поддерживать письменный диалог с пользователем. В ритейле они используются, в основном, для консультаций, приема заказов и продаж. Робот одежной сети H&M подбирает варианты товаров по параметрам. Аналогично работает бот сети Sephora. Бот Burger King подсказывает ближайший к пользователю ресторан, где можно забрать свой заказ.

Роботы для склада | Логистическая компания «ABL»

Российская компания ChatFirst разрабатывает чат-ботов с искусственным интеллектом. Они автоматизируют процесс работы с претензиями и жалобами покупателей. Бот помогает сориентироваться, как ответить и что предпринять в каждой конкретной ситуации.

Также компания разработала виртуального ассистента для HR-поддержки сотрудников Leroy Merlin. «RH Ире (так ее зовут) задают вопросы об оформлении документов, отпусках и социальных льготах, – говорит Павел Осадчук, генеральный директор ChatFirst. – В сети 75 магазинов в разных часовых поясах, в которых работает более 23 тысяч человек. Не всегда их рабочий день совпадает с графиком работы менеджера по персоналу. Виртуальный ассистент же доступен круглосуточно, без выходных, поэтому кассир, например, из Хабаровска, сможет проконсультироваться в любое время. За 4 месяца работы RH Ира ответила на более чем 3 тысячи вопросов».

Будущее робототехники

«Очевидно, что в ближайшие годы робототехника будет все активнее использоваться представителями розничной и электронной торговли. В скором времени процессы, не требующие креативного подхода, будут выполняться роботами, — убежден Дмитрий Красюков, SAP CIS. – Все трудоемкие и повторяющиеся операции станут зоной ответственности машины, а не человека».

Однако скорость внедрения новых технологий в российском ритейле зависит от многих факторов, в первую очередь – экономических. Если чат-бот обходится компании сравнительно недорого, то оборудование магазинов роботами-консультантами могут позволить себе лишь крупные сетевые игроки. Стоимость одного сервисного робота Promobot, которые использует «Лента», колеблется в диапазоне от 440 до 920 тысяч рублей. В разы дороже стоит полная роботизация склада. Для примера: автоматизированная система Symbotic обойдется заказчику в 40-80 млн долларов США.

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

«Время, когда роботы будут превалировать, предсказать трудно, — говорит Георгий Иващенко, ГК VENTRA. – Конечно, технологический прогресс бежит далеко впереди. Но вот популяризация и внедрение новых разработок зависит от экономической и законодательной составляющей того бизнес-пространства, в котором мы существуем».

Алёна Яркова | radiocopter.ru

Подписывайтесь на наш канал в Telegram, чтобы первым быть в курсе главных новостей ритейла.

Роботы для склада | Логистическая компания «ABL»

Смотрите про коптеры:  Как отключить (или включить) режим полета в Windows
Оцените статью
Радиокоптер.ру
Добавить комментарий