Программное обеспечение робототехнических систем
Содержание курса
Специализированные программные средства, среды разработки и компьютерного моделирования, прикладные пакеты, библиотеки
Базовые понятия и принципы Роботы как механические системы
Кинематические пары и цепи
Динамика
Уравнение движения
Обобщенные величины
Основные задачи динамики
Знание динамики необходимо:
Практические задачи
Фундаментальные принципы механики
Принцип виртуальных перемещений
Принцип Д’Аламбера
Принцип Гамильтона
Движение точечной массы
Формы задания и методы вывода уравнений движения
Уравнения движения в конфигурационном пространстве
Уравнения движения в операционном пространстве
Уравнения движения в форме вход-состояние-выход
Сравнение основных методов вывода уравнений движения
Метод Эйлера-Лагранжа
Уравнение движения точечной массы
Однозвенный манипулятор
Динамика манипулятора
Метод Лагранжа-Эйлера
Обобщенные координаты
Скорость произвольной точки звена манипулятора
Скорость
Например, для манипулятора с вращательными сочленениями .
Кинетическая энергия манипулятора
Потенциальная энергия манипулятора
Уравнение движения манипулятора
Пример: двухзвенный манипулятор
Рекуррентные уравнения динамики манипулятора
Алгоритм Ньютона-Эйлера
Метод Ньютона-Эйлера для решения прямой задачи динамики.
Метод Ньютона-Эйлера состоит из двух шагов:
Рекурсивная процедура вычисления сил и моментов в виде уравнения балансов
Рекурсивный алгоритм вычисления кинематики переменных
Уравнение динамики для плоского двухзвенного робота
Вывод
АЛГОРИТМЫ ПЛАНИРОВАНИЕ ТРАЕКТОРИЙ МАНИПУЛЯТОРА
ПОСТАНОВКА ЗАДАЧИ ПЛАНИРОВАНИЯ ТРАЕКТОРИЙ
Преимущества и недостатки планирования в присоединенных координатах
Алгоритм формирования узловых точек траектории в пространстве присоединенных переменных
Требования к траектории
Использование полиномов
Алгоритм формирования узловых точек траектории в пространстве декартовых переменных
Планирование траекторий в декартовом пространстве
Способ 1
Способ 2
СГЛАЖЕННЫЕ ТРАЕКТОРИИ В ПРОСТРАНСТВЕ ПРИСОЕДИНЕННЫХ ПЕРЕМЕННЫХ
Ограничения на траекторию в пространстве присоединенных переменных
Выбор полиномиальных функций
Кусочная интерполяция
Генерация траекторий
Кубические полиномы
Профиль скорости
Комбинация линейных и параболических сегментов (LSPB)
Многомерные траектории
Многосегментные траектории, определяемые промежуточными точками
Многосегментная траектория
Интерполяция для 3D-вращения
Программное обеспечение РТС
Уровни управления роботом
Политика
Стратегия
Тактика
Физика
Управление
Что нужно для управления роботом
Подсистема навигации
Подсистема восприятия
Планирование
Алгоритмы решения задач навигации
Представление окружения робота
Представления рабочего пространства
Построение графа расстояний
Дерево квадрантов
Построение графа
Граф видимости
Задача о перевозке пианино
Диаграмма Вороного
Описание
Базисные точи и точки Вороного
Пример диаграммы Вороного
Триангуляция Делоне
Триангуляция Делоне
Алгоритм Brushfire(лесной пожар)
Алгоритм блуждающей точки
Метод потенциального поля
Семейство алгоритмов блуждания (bug)
Примеры
Алгоритм Дейкстры
Пример шаг 1
Шаг 2
Шаг 2
Результат
Алгоритм А* (A-Star)
Пример
Первый шаг
Примечание
Системы реального времени Встраиваемые системы
Литература
Что такое «встраиваемая система»?
Роль операционной системы
Определения СРВ
Жесткое РВ
Мягкое РВ
Требования к системе реального времени
Основные области применения СРВ
Отличия ОСРВ от ОС ОН (общего назначения)
Время выполнения операций
Платформы для ОС
Требования к ОСРВ
Задачи, процессы, потоки
Терминология
Процесс
Инструменты взаимодействия
Отличие десктопной от встраиваемой системы
Событие
Прерывания
Основные свойства задач
Жизненный цикл процесса в системе
Состояние (статус) задачи.
Технология событийно-ориентированного программирования
Потоки или «нити»
Приоритеты
Параллельные процессы
Основные требования к операционным системам реального времени
Выполнение программ в стиле DOS
Выполнение программ в стиле Windows.
Выполнение программ в стиле iOS
Модели встраиваемых программ
Замкнутая структура
Комбинация основного цикла и прерываний
ОС реального времени
Что такое реальное время?
Цели применения алгоритма планирования
Параметры планирования
Вытесняющее и невытесняющее планирование
Многопоточная модель
Многопроцессная модель
Планировщики
Планировщик Run to Completion (RTC)
Свойства RTC
Планировщик Round Robin (RR)
Планировщик Time slice (TS)
Приоритетный планировщик (Priority Scheduler)
Схемы назначения приоритетов в ОС РВ
Блокировки
Особенности управления процессами в операционных системах реального времени
Алгоритмы планирования
Статические алгоритмы планирования
Динамические алгоритмы
Переключение контекста
Синхронизация и взаимодействие процессов
Проблемы синхронизации
Гонки
Тупики
Критическая секция программы
Средства межпроцессного взаимодействия
Очереди
Критический раздел или критическая секция
Семафоры
Прерывания
Механизм прерываний
Типы прерываний
Программные прерывания
Стандарты СРВ
Стандарт POSIX
DO-178B
Уровень программного обеспечения
Стандарт ARINC-653
Операционная система реального времени JetOS
10.62M

Программное_обеспечение_робототехнических_систем_2025

1. Программное обеспечение робототехнических систем

2. Содержание курса

Базовые понятия, определения и принцип, используемых при описании
и анализе динамики робототехнических систем.
Вывод уравнений движения на основе метода Эйлера-Лагранжа,
оперирующего вычислениями кинетической и потенциальной энергии
многозвенных систем
Метод Ньютона-Эйлера, для которого отправной точкой является баланс
сил в системе. Изложение строится от применения второго закона
Ньютона в общем виде для линейного и вращательного движения
Свойства уравнений движения робототехнических систем, которые
могут быть использованы при анализе их динамики, планировании
траекторий и синтезе алгоритмов управления

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

• Прикладной программный пакет Corke Robotics Toolbox для среды Matlab [1].
• Прикладной пакет для символьного моделирования роботов Open Symoro
[2].
• Прикладной программный пакет ARTE для моделирования про-мышленных
роботов в среде Matlab [3].
• Прикладной программный пакет Drake для моделирования и пла¬нирования
движений роботов [4].
• С++ робототехнические библиотеки с открытым кодом OROCOS [5].
• C++ библиотека Dynamechs для моделирования динамики слож-ных систем
твердых тел [6].
• Среда имитационного моделирования робототехнических систем V-REP [7].
• Среда компьютерного моделирования робототехнических систем Gazebo [8].

4. Базовые понятия и принципы Роботы как механические системы

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

5.

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

6. Кинематические пары и цепи

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