Чтение онлайн

на главную

Жанры

Кто есть кто в робототехнике. Выпуск I. Компоненты и решения для создания роботов и робототехнических систем
Шрифт:

Глава 1

Ориентирование робота в пространстве и распознавание окружающей среды

1. Самонаведение, основанное на безотносительном (абсолютном) местоположении

(по книге Joseph L. Jones «Robot Programming» – рис.1.1)

Рис 1.1

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

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

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

Рассмотрим применение GPS в «уличном» роботе (GPS хорошо работает только в пространстве под открытым небом). GPS приемник постоянно вычисляет широту и долготу на основе параметров сигналов, полученных от группировки специальных спутников. Как использовать такую информацию, чтобы довести своего робота к определённому месту назначения?

Для простоты предположим, что наш GPS приёмник оперирует информацией о местоположении относительно данного исходного пункта в форме «XY» (рис. 1.2). Координаты местоположения точки, к которой роботу необходимо двигаться – (Xg, Yg), а текущие координаты робота, снабженного GPS приемником – (Xr, Yr). Вычитание координат показывает, насколько робот должен изменить своё текущее положение (Х, Y), чтобы достичь расположения цели. Таким образом, Х = Xg – Xr, и Y = Yg – Yr.

Рис. 1.2. Это исходное положение робота, использующего информацию, обеспеченную системой позиционирования. За основу для вычисления курса берётся безотносительное (абсолютное) местоположение робота и цели. Электронный компас (увеличенный вид компаса – слева) позволит роботу следовать найденным курсом

Мы используем систему координат, привязанную к географии Земли, как показано на рисунке, с осью X, направленной на север. Чтобы достичь точки расположения цели, мы должны сделать возможным движение робота по курсу под углом относительно оси X. Элементарная тригонометрия сообщает нам, что угол, под которым мы должны двигаться, определяется из арктангенса изменений в положении «X» и «Y», то есть: = tan– 1 (Y/X).

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

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

Итак, мы справились с проблемой перемещения нашего робота точно к месту и хотим его туда направить?

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

Рис. 1.3. Заманчиво воображать, как показано на «а», что система позиционирования установит таблицу координат и, по мере того как наш робот путешествует, система позиционирования будет сообщать ему, которую из ячеек таблицы он занимает. К сожалению, разрешение (также как шум и другие ошибки) ограничивает способность любой системы позиционирования функционировать таким образом. Если разрешение нашей системы позиционирования – R, то при ограничении разрешения будут сомнения в любом измерении координат, сообщенном системой, по крайней мере, на величину ± R. Это означает, что в отличие от координат пикселя на экране компьютера, координаты робота, вычисленные системой позиционирования, можно воспринимать только как предположительные. Пример этого показан в форме чисел на «b». Когда робот занимает определённую ячейку таблицы координат в реальном мире, система позиционирования может сообщить, что робот находится в другой ячейке. То, как ячейки словно блуяздают в разные стороны от их фактических положений, показано на «с» – и они блуяздают непрерывно. Безотносительное позиционирование робота построено на этой сомнительной основе.

Каждая система позиционирования может точно измерить местоположение до некоторого минимума расстояния, но никак не меньше. Например, вы можете использовать линейку длиной в ярд, чтобы измерить расстояние всего в 1/16 дюйма. Но вы не можете использовать эту линейку, чтобы измерить толщину листа бумаги. Такие маленькие расстояния меньше предела разрешения данной линейки. Аналогично, вы не можете использовать одометр вашего автомобиля, чтобы измерить диаметр баскетбольного мяча. И так же за пределами своего разрешения ни одна система позиционирования не выдаст значащую информацию. Таким образом, первый вопрос к любой системе позиционирования – каково её разрешение?

В зависимости от обстоятельств, предел разрешения обычного GPS приемника часто не лучше порядка 10 метров. (Хотя прибор может сообщать о своём местоположении до милиметра, цифры на дисплее есть ложная точность, так как они не последовательны во времени.) Предположим, что мы пытаемся использовать такой приемник (наряду с электронным компасом), чтобы указать роботу путь в соответствии с безотносительным местоположением. Мы используем следующую программу «нацеливания» на требуемое XY-местоположение, выраженное как Dest_vec.

Поведение Home_GPS

Loc_vec = get_GPS_xy // GPS выдаёт текущий вектор местоположения

Disp_vec = Dest_vec – Loc_vec // Вектор смещения (displacement) к месту назначения (destination)

Dist = magnitude(Disp_vec) // Расстояние (distance) до места назначения

Theta = arctan_vec (Disp_vec) // Вектор смещения определяет требуемый курс

Heading = Get_compass_heading // Получите от компаса фактический курс робота

If (Dist /= 0) // Мы достигли места назначения?

Rotation = gl * (heading – theta) // Рассчитайте параметры поворота

Translation = g2 * Dist // Рассчитайте скорость перемещения

end if

end Home_GPS

Что случится, когда робот поведёт себя именно так? Если его движение моделировать на компьютере, Home_GPS заставит виртуального робота повернуться к точке назначения, движение пойдёт гладко, и всё закончится, когда робот достигнет точного места, указанного Dest_vec. Но, управляющий физическим роботом в реальном мире, Home_GPS не сможет достичь места назначения. Вместо этого, чем больше робот будет приближаться к цели, тем более растерянным он начнёт казаться.

Поделиться:
Популярные книги

Воевода

Ланцов Михаил Алексеевич
5. Помещик
Фантастика:
альтернативная история
5.00
рейтинг книги
Воевода

Девятый

Каменистый Артем
1. Девятый
Фантастика:
боевая фантастика
попаданцы
9.15
рейтинг книги
Девятый

Совершенный: пробуждение

Vector
1. Совершенный
Фантастика:
боевая фантастика
рпг
5.00
рейтинг книги
Совершенный: пробуждение

Кодекс Крови. Книга Х

Борзых М.
10. РОС: Кодекс Крови
Фантастика:
фэнтези
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Крови. Книга Х

Дайте поспать! Том IV

Матисов Павел
4. Вечный Сон
Фантастика:
городское фэнтези
постапокалипсис
рпг
5.00
рейтинг книги
Дайте поспать! Том IV

Ротмистр Гордеев

Дашко Дмитрий Николаевич
1. Ротмистр Гордеев
Фантастика:
фэнтези
попаданцы
альтернативная история
5.00
рейтинг книги
Ротмистр Гордеев

Как я строил магическую империю 2

Зубов Константин
2. Как я строил магическую империю
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Как я строил магическую империю 2

Тройняшки не по плану. Идеальный генофонд

Лесневская Вероника
Роковые подмены
Любовные романы:
современные любовные романы
6.80
рейтинг книги
Тройняшки не по плану. Идеальный генофонд

Специалист

Кораблев Родион
17. Другая сторона
Фантастика:
боевая фантастика
попаданцы
рпг
5.00
рейтинг книги
Специалист

Не грози Дубровскому! Том IX

Панарин Антон
9. РОС: Не грози Дубровскому!
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Не грози Дубровскому! Том IX

Неудержимый. Книга III

Боярский Андрей
3. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Неудержимый. Книга III

Изгой. Пенталогия

Михайлов Дем Алексеевич
Изгой
Фантастика:
фэнтези
9.01
рейтинг книги
Изгой. Пенталогия

Жена по ошибке

Ардова Алиса
Любовные романы:
любовно-фантастические романы
7.71
рейтинг книги
Жена по ошибке

Пистоль и шпага

Дроздов Анатолий Федорович
2. Штуцер и тесак
Фантастика:
альтернативная история
8.28
рейтинг книги
Пистоль и шпага