Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Использование данных датчиков движения для оценки изменения положения объекта с течением времени
Use of data from motion sensors to estimate change of its position over time
Одометрия – это использование данных датчиков движения для оценки изменения положения объекта с течением времени. Она применяется в робототехнике некоторыми шагающими или колесными роботами для определения их местоположения относительно начальной точки. Этот метод чувствителен к ошибкам, возникающим из-за интегрирования измерений скорости во времени для получения оценок положения. Для эффективного использования одометрии в большинстве случаев требуется быстрый и точный сбор данных, калибровка приборов и обработка данных. Слово "одометрия" образовано от греческих слов "одос" (означает "путь") и "метрон" (означает "мера").
Odometry is the use of data from motion sensors to estimate change in position over time. It is used in robotics by some legged or wheeled robots to estimate their position relative to a starting location. This method is sensitive to errors due to the integration of velocity measurements over time to give position estimates. Rapid and accurate data collection, instrument calibration, and processing are required in most cases for odometry to be used effectively. The word odometry is composed of the Greek words odos (meaning "route") and metron (meaning "measure").
Пример
Предположим, у робота на колёсах или в суставах ног установлены поворотные энкодеры. Он движется вперёд в течение некоторого времени и затем хочет узнать, какое расстояние он преодолел. Он может измерить угол поворота колёс, и, зная окружность колёс, вычислить пройденное расстояние. Одометрия также широко используется в железнодорожном транспорте. Обычно поезд определяет своё абсолютное положение, проезжая над стационарными датчиками на путях, а одометрия используется для вычисления относительного положения между этими датчиками.
Suppose a robot has rotary encoders on its wheels or on its legged joints. It drives forward for some time and then would like to know how far it has traveled. It can measure how far the wheels have rotated, and if it knows the circumference of its wheels, compute the distance. Train operations are also frequent users of odometrics. Typically, a train gets an absolute position by passing over stationary sensors in the tracks, while odometry is used to calculate relative position while the train is between the sensors.
Более сложный пример
Предположим, что у простого робота есть два колеса, которые могут двигаться вперед или назад, и они расположены параллельно друг другу на одинаковом расстоянии от центра робота. Кроме того, предположим, что каждый мотор оснащен поворотным энкодером, что позволяет определить, проехало ли какое-либо колесо по полу одну "единицу" вперед или назад. Эта единица – это отношение длины окружности колеса к разрешающей способности энкодера. Если левое колесо продвинется на одну единицу вперед, а правое останется неподвижным, то правое колесо будет служить осью вращения, а левое колесо опишет по часовой стрелке круговую дугу. Поскольку единица расстояния обычно очень мала, можно аппроксимировать эту дугу прямой линией. Таким образом, исходное положение левого колеса, конечное положение левого колеса и положение правого колеса образуют треугольник, который можно обозначить как А. Аналогично, исходное положение центра робота, конечное положение центра робота и положение правого колеса образуют треугольник, который можно обозначить как B. Поскольку центр робота находится на одинаковом расстоянии от обоих колес и оба треугольника имеют общий угол при правом колесе, треугольники А и В подобны. В данной ситуации величина изменения положения центра робота составляет половину единицы. Угол этого изменения можно определить, используя теорему синусов.
Suppose that a simple robot has two wheels which can both move forward or reverse and that they are positioned parallel to one another, and equidistant from the center of the robot. Further, assume that each motor has a rotary encoder, and so one can determine if either wheel has traveled one "unit" forward or reverse along the floor. This unit is the ratio of the circumference of the wheel to the resolution of the encoder. If the left wheel were to move forward one unit while the right wheel remained stationary, then the right wheel acts as a pivot, and the left wheel traces a circular arc in the clockwise direction. Since one's unit of distance is usually tiny, one can approximate by assuming that this arc is a line. Thus, the original position of the left wheel, the final position of the left wheel, and the position of the right wheel form a triangle, which one can call A. Also, the original position of the center, the final position of the center, and the position of the right wheel form a triangle which one can call B. Since the center of the robot is equidistant to either wheel, and as they share the angle formed at the right wheel, triangles A and B are similar triangles. In this situation, the magnitude of the change of position of the center of the robot is one half of a unit. The angle of this change can be determined using the law of sines.