engineering

Учебник Робототехника для начинающих

23 урока · 8 разделов · бесплатно, без регистрации

Этот курс — про математику, которая заставляет роботов двигаться. Мы разберём, как из углов в суставах получить положение схвата (прямая кинематика) и как решить обратную задачу, как считать скорости через якобиан, где прячутся сингулярности, как мобильный робот считает свою позицию по колёсам и планирует путь, и как ПИД-регулятор выводит привод на уставку. Рядом с каждой формулой — компактный расчёт на стандартной библиотеке Python (модуль math), который можно запустить прямо в браузере и увидеть, что теория сходится с числами. Курс рассчитан на тех, кто знает базовую тригонометрию и немного программирует; он не про конкретный фреймворк, а про инженерную суть — кинематику, динамику и управление манипуляторов и колёсных роботов.

Курс «Робототехника: кинематика и управление» состоит из 8 разделов и 23 уроков: Что такое робот: звенья, суставы, степени свободы, Преобразования: повороты и однородные матрицы, Прямая кинематика манипулятора, Обратная кинематика, Дифференциальная кинематика и якобиан, Мобильные роботы: одометрия и планирование, Управление: ПИД-регулятор и устойчивость и Динамика, приводы и захват. Уроки идут по порядку — от основ к более сложным темам, в каждом есть объяснение с примерами, а в конце — вопросы для самопроверки. К урокам привязаны задачи с автоматической проверкой: прочитали тему — сразу закрепили её кодом.

Программа курса

  1. 1 Что такое робот: звенья, суставы, степени свободы

    1. Робот как кинематическая цепь

      Робот как цепь звеньев и суставов: открытая и замкнутая цепь, манипулятор и мобильный робот, что изучает кинематика.

    2. Степени свободы и рабочая зона

      Степени свободы робота, формула подвижности, рабочая зона манипулятора и почему 6 DOF хватает для произвольной позы.

    3. Системы координат и позы

      Системы координат робота, поза как положение плюс ориентация, локальные и мировые координаты, правая тройка осей.

  2. 2 Преобразования: повороты и однородные матрицы

    1. Поворот на плоскости и матрица поворота

      Матрица поворота 2x2, поворот вектора на угол, свойства ортогональных матриц, расчёт на Python.

    2. Однородные преобразования

      Однородные матрицы преобразования: поворот и перенос в одной матрице, композиция преобразований цепи звеньев на Python.

    3. Углы Эйлера и ориентация в пространстве

      Углы Эйлера, последовательность поворотов roll-pitch-yaw, перемножение матриц поворота в 3D на Python stdlib.

  3. 3 Прямая кинематика манипулятора

    1. Прямая кинематика двухзвенника

      Прямая кинематика плоского двухзвенного манипулятора: формулы положения схвата через углы суставов, проверка на Python.

    2. Параметры Денавита-Хартенберга

      Конвенция Денавита-Хартенберга: четыре параметра звена, матрица DH-преобразования, систематическое описание манипулятора.

    3. Трёхзвенный манипулятор

      Прямая кинематика трёхзвенного плоского манипулятора, обобщение формул, контроль ориентации схвата на Python.

  4. 4 Обратная кинематика

    1. Геометрическая обратная кинематика

      Геометрическое решение обратной кинематики двухзвенника через теорему косинусов, два решения локоть вверх/вниз.

    2. Численная обратная кинематика: метод Ньютона

      Численная обратная кинематика методом Ньютона через обратный якобиан, итерации к цели, реализация на Python stdlib.

    3. Множественность решений и ограничения

      Множественность решений обратной кинематики, выбор конфигурации, ограничения углов суставов и достижимость цели.

  5. 5 Дифференциальная кинематика и якобиан

    1. Якобиан и скорости схвата

      Якобиан манипулятора, перевод скоростей суставов в линейную скорость схвата, расчёт на Python stdlib.

    2. Сингулярности и манипулируемость

      Сингулярности манипулятора: вырождение якобиана, det J = 0, потеря подвижности, мера манипулируемости, расчёт на Python.

  6. 6 Мобильные роботы: одометрия и планирование

    1. Одометрия дифференциального привода

      Одометрия дифференциального привода: линейная и угловая скорость по колёсам, интегрирование позы робота на Python.

    2. Модель велосипеда

      Кинематическая модель велосипеда для автомобилеподобных роботов: угол руля, радиус поворота, ограничение Аккермана.

    3. Планирование пути алгоритмом A*

      Планирование пути мобильного робота алгоритмом A*: эвристика, очередь с приоритетом, поиск пути в сетке на Python.

  7. 7 Управление: ПИД-регулятор и устойчивость

    1. Обратная связь и ПИД-регулятор

      ПИД-регулятор: пропорциональная, интегральная и дифференциальная составляющие, формула управления, симуляция на Python.

    2. Настройка коэффициентов и перерегулирование

      Настройка ПИД: влияние Kp/Ki/Kd на перерегулирование и время выхода, сравнение реакций системы на Python.

    3. Устойчивость систем управления

      Устойчивость систем управления: затухание и расходимость, понятие устойчивости по входу-выходу, симуляция на Python.

  8. 8 Динамика, приводы и захват

    1. Динамика: моменты в суставах

      Динамика манипулятора: гравитационные моменты в суставах, статический баланс, расчёт требуемого момента приводов на Python.

    2. Приводы и передаточные числа

      Приводы роботов: электродвигатели, редукторы и передаточное число, пересчёт момента и скорости, КПД, расчёт на Python.

    3. Основы захвата и манипуляции

      Основы захвата: силовое и геометрическое замыкание, удержание объекта трением, условие непроскальзывания, расчёт на Python.