Презентации для 3501
Для того, чтобы успешно подключиться к проектору нужно:
- Воткнуть провод от проектора в ноутбук;
- Включить проектор с помощью пульта - пульт и провод на фотографии выше;
- Уменьшить разрешение экрана (иначе проектор не будет показывать экран).
Выберите разрешение меньше максимального, например, 1680*1050. Если проектор всё ещё не будет показывать экран, выберите разрешение меньше.
Введение в платформу Duckietown
- Знакомство с компаниями, которые производят автономные автомобили(аа), соревнование аа; уровни автономности;
- Итоги по существующим аа; модель умного города;
- История развития Duckietown;
- Давайте построим беспилотник; из чего он будет состоять;
- Стек технологий для Duckietown;
- Калибровка бота;
- Из картинки в движение робота. Этапы;
- Что ещё можно добавить в умный город;
- Симулятор; эвалюатор; автолаб сайт;
- Масштибируемость;
- Мероприятия на базе Duckietown в лаборатории.
Ссылка: https://docs.google.com/presentation/d/1jY5UaXB5HUjH7AY3DuBbKJmLePOPMj84jvK60SQBM9M/edit#slide=id.p
На английском: https://docs.google.com/presentation/d/1T4O8gG9YO25a2pLg6xDZLm9meEP_3O6KxMpYSA_MPdY/edit#slide=id.p
Подробное знакомство с Duckietown
- Из чего состоит дакибот;
- Поиск дакиботов в сети; управление дакиботом через джойстик;
- Автолаб сайт; редактор карт;
- Соревнование с проверкой в симуляторе;
- Документация;
- VSCode для Dukietown;
- Шаблон решения; сборка решения из шаблона;
- Запуск демо разных на роботе;
- Перезапуск дакибота; остновка контейнера;
- Решение, где дакибот крутится на месте.
Ссылка: https://docs.google.com/presentation/d/1wS--OP2db6tR_nuzS_wmaS1GP_k-If6m2DeAiOqtYMw/edit#slide=id.p
Урезанная презентация: https://docs.google.com/presentation/d/1Szm_-xINzcrCyodeN4V-D7cePLynZcbyyo5kOgtE5EE/edit#slide=id.p
Введение в Python
- Почему Python, философия языка;
- Комментарии;
- Типы данных;
- Запуск программы;
- Функции: основные сведения, синтаксис вызова, примеры вызова, определение функции;
- Подробнее о числах;
- Операции над целыми и вещественными числами;
- Логический тип данных;
- Логические операторы;
- Операторы сравнения;
- Приведение типов;
- Строки, индексация, срезы;
- Списки;
- Словари;
- Оператор ветвления;
- Базовые конструкции языка: break, continue;
- Циклы: while, for;
- Возможные ошибки;
- Вывод данных;
- Работа с модулями;
- Задачи.
Ссылка: https://docs.google.com/presentation/d/1-9FbHij8t5w_WMNPsI2_EJ36MQfW3Av0itSMwTmD-Ek/edit#slide=id.p
Основы NumPy
- Что такое NumPy, зачем она нужна, как подключить;
- Массивы и операции над ними;
- Матрицы и операции над ними;
- Диапазоны и операции над ними;
- Индексация, сечения;
- Атрибуты массива и изменения их значений;
- Векторизация;
- Встроенные методы и ф-ии(min, max, average…), встроенные математич. ф-ии(cos, log…);
- Задачки по темам.
Введение в OpenCV
- Для чего используется компьютерное зрение;
- Что такое OpenCV; как установить;
- Чтение и запись изображений;
- Структура изображения;
- Цветовые режимы;
- Рисование на изображении;
- Бинарные изображения;
- Сегментация изображения по цвету;
- Поиск контуров на изображении;
- Детекция линий на изображении;
- Квадратные границы вокруг контура.
Ссылка: https://docs.google.com/presentation/d/1ea7Erpxf93IV1wn4lBkcTIxU9ZFPat-4IV6jQtS7X4k/edit#slide=id.p
Командная строка и сетевое взаимодействие в Linux
- Что такое интерфейс;
- Что такое командная строка; как выглядит терминал;
- Команда ls: аргументы, важные правила;
- Другие команды (pwd, cd, копирование, поиск, автодополнение);
- Дерево каталогов Linux;
- Работа с файлами;
- Управление процессами;
- Сетевое взаимодействие(IP-адреса, домены, ping);
- Запуск http сервера.
Ссылка: https://docs.google.com/presentation/d/1NxP6Zkq2hyYIXQVY9Ncw6sLpDafb4FWhVFkyBgUJ3ek/edit#slide=id.p
Основы беспилотного транспорта
- Что такое беспилотный автомобиль;
- Что такое автопилот, где он применяется, где будет применяться в будущем, решаемые задачи;
- Уровни автономности;
- Оснащение беспилотного автомобиля;
- Основные узлы в беспилотном транспорте: обработка изображений, локализация, планировщик пути, одометрия, решаемые задачи;
- Идея для локализации;
- Планирование пути;
- Глобальный планировщик;
- Представление мира в виде графа;
- Поиск в ширину, жадный алгоритм и А*;
- Локальный планировщик;
- PID регулятор.
Ссылка: https://docs.google.com/presentation/d/1P1AH2sVm7H4XSqh06TPMz_QZyhmHn1-VwYb6-JwvKQ8/edit#slide=id.p
Введение в алгоритмы одновременной локализации и построения карты (SLAM)
- Задача SLAM;
- Области применения;
- Альтернативные подходы для вычисления собственного положения;
- Схема алгоритма, решающего задачу SLAM;
- Какие алгоритмы сейчас в тренде;
- Когда следует применять то или иное семейство алгоритмов;
- Пример работы в реальном времени.
Ссылка: https://docs.google.com/presentation/d/17hmHkzRV0kmfmcHUuAohqPpaise04F_gN5b3sX2RFbc/edit#slide=id.p
Embedded Programming
- Из чего состоит микроконтроллер;
- MCU vs МPU (CPU);
- Закон ома;
- AVR микроконтроллеры;
- Arduino, из чего состоит;
- Arduino IDE, из чего состоит;
- Структура программы;
- I/O: Digital, Analog;
- Периферийные устройства;
- Макеты: схема, фотографии;
- Arduino IDE, под капотом;
- Процесс выгрузки кода в память запоминающего устройства микроконтроллера;
- Прерывания: внешние, таймера;
- Установка и сборка gcc-avr;
- Что такое LED, как подключить его к Arduino;
- Схемы подключения кнопки к макету;
- Схема работы кнопки отказа;
- Как работает яркость LED, RGB LED;
- I2C (внутренняя интегральная схема): схема, master пищет, slave читает;
- Подключение Arduino к Arduino;
- Задачи по темам.
Ссылка: https://docs.google.com/presentation/d/1Lro0z1jVc-IADHuOBzA7IyP0F1l4Jm5UyIFCbo_tU70/edit#slide=id.p
Embedded Programming Practice
- Внутренний светодиод Arduino, изменение частоты мигания;
- Подключение светодиода и кнопки, мигание с помощью кнопки;
- Подключение нескольких светодиодов и кнопок;
- Мигание с задержкой и без задержки, изменение частоты мигания по кнопке;
- Работа с RGB светодиодами, как получить нужный цвет;
- Потенциометр, изменение яркости светодиодов, плавное изменение цвета светодиода;
- Фоторезистр;
- Регистр сдвига;
- Адресные светодиоды;
- Установка библиотек в Arduino IDE;
- Коммуникация между несколькими платами Arduino;
- Сервопривод, сервопривод + потенциометр;
- Задачи по темам.
Ссылка: https://docs.google.com/presentation/d/1J61pNZz7CoccOuSx0Py7IJX34Z93DK1wZDJpWnJ3Flo/edit#slide=id.p
Rukami: Smart city traffic light
- Где в Duckietown светофор и какой нужен опыт программирования;
- Что такое Arduino;
- За что отвечают желтый, оранжевый и красный провод в светофоре;
- Как подключать провода от светофора к Arduino;
- Arduino IDE;
- Пишем программу(дефолтный вариант, переключение цвета, таймер);
- Подключаем кнопку - схема;
- Пишем код для кнопки;
- Резюмируем - как создать умный светофор.
Ссылка: https://docs.google.com/presentation/d/1R-BvNf-Q30EvvRYgKX_lTq6MHZj38hERzqxf6SC8nZ4/edit#slide=id.p
Введение в Robot Operating System
- Что такое ROS, где используется, как установить;
- Как запустить ROS
- Структура каталогов: рабочей области, пакетов.
- Описание узлов и топиков;
- Publish-Subscriber архитектура;
- Запуск нод;
- Примеры писателей и читателей(код);
- Сервисы;
- Примеры клиентов и серверов(код);
- Rqt_graph(как запустить);
- Информация про launch-файлы;
- Пример кода ноды, использующей параметры;
- Rosbag.
Ссылка: https://docs.google.com/presentation/d/17B-VFQT72k3vTFuGfufVvtIspRYfshbXx9x0dF7bMU8/edit#slide=id.p
Управление виртуальным беспилотным автомобилем. Практика на задачах из Moodle.
- Описание проверки решения;
- Шаблон решения;
- Описание логики работы робота;
- Описание управления роботом;
- Задачи.
Ссылка: https://docs.google.com/presentation/d/12ZXGWfsxYIExxNNiNFWixpEvb6CXDFsS6nFJwogm25k/edit#slide=id.p
Остановка перед уточкой
- Ссылка на задачу и шаблон, описание задачи и шаблона;
- Локальная отладка;
- Поиск жетого на картине;
- Определение размера утки;
- Отправка решения.
Ссылка: https://docs.google.com/presentation/d/15qAZV-nFrPr4Ka-x1K2fItTv4VaPPchoBoAQQ5bTYOg/edit#slide=id.p