Реализация системы управления роботом

Реализация системы управления роботом

МОДУЛЬ 12
Несмотря на сравнительно небольшой объем информации, с которой обычно приходится работать (скажем, бодрые сверточные нейросети развернуть едва ли получится), на микроконтроллерах все еще можно решать достаточно интересные задачи. Скажем, по вибрации стола от набора текста на клавиатуре можно восстановить сам текст.
Более простой пример можно привести из области мобильной робототехники. Достаточно часто приходится бороться с «побочными эффектами» расхождения реального мира и математической модели, из-за которых рабочий сценарий идет не по плану. Типовая проблема — застревание робота. Застрять робот может по-разному, и, казалось бы, без камеры не обойтись. Если сместить фокус с причины робота на следствие и настоящую проблему (робот не движется), можно сформулировать простой критерий определения: данные с энкодеров и инерциальных датчиков расходятся.
Процесс принятия решений в робототехнике строится на:
  • априорных знаниях
  • апостериорных знаниях
То есть на некоторой безусловной информации о сценарии работы робота и «опыта» самого робота во время работы. К априорным знаниям относится, например, вышеописанный алгоритм детектирования пробуксовки. Полезно формулировать общие абстрактные инструкции, поскольку это позволяет упростить отладку и повысить надежность. Главную логику удобно описывать с помощью конечных автоматов, а конкретные инструкции для работы в конкретном состоянии — с помощью функций.
Немаловажные ограничения накладывает устройство робота, поскольку разные процессы его систем протекают с разной скоростью. Если данные с энкодеров приходят крайне быстро, то данные о местоположении по GPS обновляются значительно реже. Полезно составить пирамиду частот, по которой можно будет понять, какие процессы выносить в прерывания, какие в основную программу, а какие вовсе лучше вынести для обработки на аппаратный уровень.
К апостериорным знаниям относятся различные методы навигации, которые используют свежие сенсорные данные для улучшения оценки своего местоположения, адаптивные регуляторы, автоматически настраивающие коэффициенты, и многое другое.
Подробнее об алгоритмах и методах мобильной робототехники вы можете прочитать в культовой книге Introduction to Mobile Robotics.
Запишитесь на курс, чтобы выполнить задания и получить сертификат!
Присоединяйтесь к нашему робочату в Telegram!
Микроконтроллеры. Основы STM32
Курс для школьников старших классов и студентов младшего бакалавриата про основы устройства вычислительной техники и практические методы работы с микроконтроллерами на примере STM32. Курс научит использовать микроконтроллеры под необходимые задачи и пробовать разные творческие подходы к программированию.
14 уроков с короткими видео (до 15 минут)
Проверочные задания после каждой главы
Авторская подача: просто, понятно и с примерами
Свободное расписание: нет дедлайнов и сроков сдачи заданий
Все материалы доступны сразу, можно начать обучение в удобное время
Профессиональное видео и современная графика
Быстрая связь с техподдержкой и чат с автором
Сертификат о прохождении курса
Зачем
Мыслить и программировать творчески, не следуя заложенной схеме
Научиться переходить на разные платформы для программирования
Реализовывать технические идеи, используя продвинутые инструменты
Что вы получите
Собрать и запрограммировать необычного робота
Познакомиться с перспективной профессией
Запишитесь, чтобы получить доступ к заданиям и чату курса
Находясь на сайте, вы даете согласие на обработку файлов cookie. Это необходимо для более стабильной работы сайта