TG Telegram Group & Channel
Devs World | United States America (US)
Create: Update:

🤖 А вы задумывались когда-то как работает ваш робот-пылесос? Сегодня немного об этом расскажу.

👾 Как работает LIDAR

LIDAR (Light Detection And Ranging) - это вращающийся лазерный дальномер, который несколько раз в секунду обходит всю комнату по кругу и замеряет расстояние до ближайших препятствий в каждой точке по углу.

Выход: массив пар (угол, расстояние) для каждого сканирования.

👾 Преобразование LIDAR-данных в карту квартиры

SLAM - Simultaneous Localization And Mapping

Алгоритм, который строит карту и одновременно определяет своё положение на ней, называется SLAM. Практически все современные роботы используют либо классический 2D SLAM, либо вариации (например, Cartographer от Google, GMapping, HectorSLAM).

Простая последовательность:

1. Сканирование: Робот получает "кольцо" точек вокруг себя (точки препятствий).

2. Оценка перемещения: Сравнивает текущее сканирование с предыдущим, чтобы понять, как он сдвинулся (обычно через ICP — Iterative Closest Point).

3. Оценка по одометру: Использует данные с колес (если есть) для уточнения перемещения.

4. Построение карты: Накапливает "облака точек" на сетке (обычно Occupancy Grid Map, где каждая клетка — свободна/занята/неизвестна).

5. Коррекция ошибок: Со временем использует методы "закрытия циклов" - если робот приехал в уже изученное место, корректирует свою карту и положение.

Итог: Получается карта квартиры в виде 2D-сетки (grid map), где видно стены, проходы, мебель.

👾 Как ездит робот по построенной карте

1. Локализация

В реальном времени робот продолжает использовать LIDAR, чтобы:

Сверять текущий круг LIDAR с картой (amcl - adaptive Monte Carlo localization, или particle filter).

Всегда знать, где он находится на карте (даже если его подвинуть руками).

2. Навигация и планирование маршрута

Два уровня:

1. Глобальный путь (Global Path Planning):
Алгоритмы типа A* или Dijkstra строят кратчайший путь по “чистой” карте (без учета динамических препятствий).


2. Локальный путь (Local Path Planning):
Робот смотрит ближайшее окружение (например, 1-2 метра) и строит траекторию с учетом новых препятствий (стул, ноги и т.д.), используя данные LIDAR в реальном времени (алгоритмы типа DWA — Dynamic Window Approach, или TEB — Timed Elastic Band).

Процесс:

Выбирается следующая “цель” (точка, участок для уборки).

Глобальный планировщик строит маршрут.

Локальный планировщик корректирует траекторию по свежим данным с LIDAR.

Робот двигается, всё время уточняя своё положение.

👾 Как работает в куче

1. LIDAR рисует "кольцо" вокруг робота
2. SLAM “сшивает” кольца друг с другом → карта
3. Робот узнает своё место на карте
4. Планирует путь с учётом карты
5. Едет, реагирует на изменения по LIDAR в реальном времени

👾 Примерная структура используемых алгоритмов

LIDAR scan → Preprocessing → SLAM (карта + позиция)

Карта + позиция + цели → Path Planning (A*, DWA и т.п.)

Движение → новые LIDAR данные → корректировка

👉 Подпишитесь что бы не пропустить интересное

🤖 А вы задумывались когда-то как работает ваш робот-пылесос? Сегодня немного об этом расскажу.

👾 Как работает LIDAR

LIDAR (Light Detection And Ranging) - это вращающийся лазерный дальномер, который несколько раз в секунду обходит всю комнату по кругу и замеряет расстояние до ближайших препятствий в каждой точке по углу.

Выход: массив пар (угол, расстояние) для каждого сканирования.

👾 Преобразование LIDAR-данных в карту квартиры

SLAM - Simultaneous Localization And Mapping

Алгоритм, который строит карту и одновременно определяет своё положение на ней, называется SLAM. Практически все современные роботы используют либо классический 2D SLAM, либо вариации (например, Cartographer от Google, GMapping, HectorSLAM).

Простая последовательность:

1. Сканирование: Робот получает "кольцо" точек вокруг себя (точки препятствий).

2. Оценка перемещения: Сравнивает текущее сканирование с предыдущим, чтобы понять, как он сдвинулся (обычно через ICP — Iterative Closest Point).

3. Оценка по одометру: Использует данные с колес (если есть) для уточнения перемещения.

4. Построение карты: Накапливает "облака точек" на сетке (обычно Occupancy Grid Map, где каждая клетка — свободна/занята/неизвестна).

5. Коррекция ошибок: Со временем использует методы "закрытия циклов" - если робот приехал в уже изученное место, корректирует свою карту и положение.

Итог: Получается карта квартиры в виде 2D-сетки (grid map), где видно стены, проходы, мебель.

👾 Как ездит робот по построенной карте

1. Локализация

В реальном времени робот продолжает использовать LIDAR, чтобы:

Сверять текущий круг LIDAR с картой (amcl - adaptive Monte Carlo localization, или particle filter).

Всегда знать, где он находится на карте (даже если его подвинуть руками).

2. Навигация и планирование маршрута

Два уровня:

1. Глобальный путь (Global Path Planning):
Алгоритмы типа A* или Dijkstra строят кратчайший путь по “чистой” карте (без учета динамических препятствий).


2. Локальный путь (Local Path Planning):
Робот смотрит ближайшее окружение (например, 1-2 метра) и строит траекторию с учетом новых препятствий (стул, ноги и т.д.), используя данные LIDAR в реальном времени (алгоритмы типа DWA — Dynamic Window Approach, или TEB — Timed Elastic Band).

Процесс:

Выбирается следующая “цель” (точка, участок для уборки).

Глобальный планировщик строит маршрут.

Локальный планировщик корректирует траекторию по свежим данным с LIDAR.

Робот двигается, всё время уточняя своё положение.

👾 Как работает в куче

1. LIDAR рисует "кольцо" вокруг робота
2. SLAM “сшивает” кольца друг с другом → карта
3. Робот узнает своё место на карте
4. Планирует путь с учётом карты
5. Едет, реагирует на изменения по LIDAR в реальном времени

👾 Примерная структура используемых алгоритмов

LIDAR scan → Preprocessing → SLAM (карта + позиция)

Карта + позиция + цели → Path Planning (A*, DWA и т.п.)

Движение → новые LIDAR данные → корректировка

👉 Подпишитесь что бы не пропустить интересное


>>Click here to continue<<

Devs World




Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)