План на курса

Седмица 01

Ден 01

Въведение

  • Какво прави робота умна?

Физически vs Виртуални Роботи

  • Умни роботи, умни машини, чувствителни машини и автоматизация на роботски процеси (RPA) и т.н.

Ролята на изкуствения интелигент (AI) в роботика

  • Овладяване на "ако-тогава-иначе" и обучаващите машини
  • Алгоритмите зад AI
  • Машинно обучение, компютърно зрение, обработка на естествени езици (NLP) и т.н.
  • Когнитивна роботика

Ден 02

Ролята на големите данни в роботика

  • Вземане на решения на основата на данни и шаблони

Облака и роботика

  • Връзка между роботика и информационни технологии
  • Създаване на по-функционални роботи, които имат достъп до повече информация и могат да сътрудничат

Случайно изследване: Промишлени роботи

  • Механични роботи
    • Baxter
  • Роботи в ядрени съоръжения
    • Детекция и защита от радиация
  • Роботи в ядрени реактори
    • Детекция и защита от радиация

Ден 03

Хардуерни компоненти на робота

  • Мотори, сензори, микроконтролъри, камери и т.н.

Общи елементи на роботите

  • Машинно зрение, разпознаване на глас, синтез на реч, сензиране на близост, сензиране на налягане и т.н.

Ден 04

Фреймворки за програмиране на робот

  • Отворени и комерсиални фреймворки
  • Robot Operating System (ROS)
    • Архитектура: работно пространство, теми, съобщения, услуги, възли, ActionLibs, инструменти и т.н.

Езици за програмиране на робот

  • C++ за контрол на ниско ниво
  • Python за оркестрация
  • Програмиране на възли на ROS в Python и C++
  • Други езици

Ден 05

Инструменти за симулиране на физически робот

  • Комерсиални и отворени 3D симулационни и визуализационни софтуерни решения

Инструменти за проектиране на физичните характеристики на робот

  • Комерсиални и отворени CAD софтуерни решения

Случайно изследване: Механични роботи

  • Роботи в ядрената технология
  • Роботи в екологични системи

Седмица 02

Ден 06

Кратък курс по Python

  • Инсталиране и настройка на софтуер
  • Полезни пакети и утилити
  • Работа с структури на данни в Python, оператори, цикли, условни изрази, функции, методи и т.н.
  • Написване на примерен програмен код
  • Екипен проект

Ден 07

Подготовка за разработка на робот

  • Настройка на разработващото оокружение (например, Arduino IDE)
  • Разглеждане на синтаксиса на езика Arduino (C/C++)
  • Кодиране, компилиране и качване към микроконтролера
  • Монтаж на хардуерните компоненти на робот на база Arduino

Ден 08

Работа с компоненти на Arduino

  • Аналогови сензори
  • Дигитални сензори

Работа с комуникационни модули на Arduino

  • Bluetooth модули
  • Wi-Fi модули
  • RFID модули
  • I2C и SPI
  • Мобилен интернет

Ден 09

Конструиране на робот

  • Планиране на характеристиките и функционалностите на робота
  • Реализация на движението на робота

Екипен проект

  • Обсуждане и преглед

Ден 10

Контролиране на робота

  • Реализация на контролера
  • Връзка с робота (с кабел и безжично)

Екипен проект

  • Обсуждане и преглед

Седмица 03

Ден 11

Програмиране на робота

  • Симулиране на робот с Gazebo / ROS
  • Разбиране на възел в ROS
  • Програмиране на възел в Python и C++
  • Съобщения и теми в ROS
  • Парадигма на публикуване/подписване

Екипен проект

  • Отказ и отидете с истински робот
  • Обсуждане и преглед

Ден 12

Програмиране на робота (продължение...)

  • Рамки в ROS и промяна на референции
  • 2D обработка на информация от камери с OpenCV
  • Обработка на информация от лазер

Екипен проект

  • Сигурно следене на обекти по цвят
  • Обсуждане и преглед

Ден 13

Тестиране на робота

  • Инструменти за тестване на кода
  • Едино тестване
  • Създаване на тестов набор
  • Автоматизация на тестовете
  • Отстраняване на проблеми

Екипен проект

  • Сигурно следене на обекти по цвят
  • Обсуждане и преглед

Ден 14

Програмиране на робота (продължение...)

  • Услуги в ROS
  • 3D обработка на информация от RGB-D сензори с PCL
  • Карти и навигация с ROS

Ден 15

Програмиране на робота (продължение...)

  • Завършване на задачи с ActionLib

Екипен проект

  • Търсене на обекти в околната среда

Седмица 04

Ден 16

Програмиране на робота (продължение...)

  • Завършване на задачи с ActionLib

Ден 17

Програмиране на робота (продължение...)

  • Разпознаване на реч и генериране на реч
  • Отстраняване на проблеми

Екипен проект

  • Контролиране на робот с глас

Ден 18

Програмиране на робота (продължение...)

  • Контролиране на роботски ръце с MoveIt!
  • Контролиране на роботска вратовръзка за активно зрение
  • Отстраняване на проблеми

Екипен проект

  • Търсене и събиране на обекти

Ден 19

Разработване на робота

  • Разработване на робот в физическия свят
  • Наблюдение и обслужване на роботи в полеви условия
  • Използване на мобилно приложение за контролиране на робот

Сигурност на робота

  • Предотвратяване на несанкционирано вмешателство
  • Предотвратяване на хакери от преглед и кражба на чувствителна информация

Ден 20

Анализ на данни

  • Събиране и организиране на данните, генерирани от робота
  • Разбиране на данните чрез визуализационни инструменти и процеси

Създаване на робот колективно

  • Създаване на робот в облака
  • Създаване на мобилно приложение за взаимодействие с вашия робот
  • Присъединяване към роботското общество

Будущото за роботите в науката и енергийния сектор

Резюме и заключение

Изисквания

  • Опит в програмиране на C или C++
  • Опит в програмиране на Python (полезно, но не задължително; може да бъде преподадено като част от курса)
  • Опит с командния ред на Linux

Целева аудитория

  • Разработчици
  • Инженери
  • Учени
  • Техници
 80 часа

Брой участници


Цена за участник

Отзиви от потребители (1)

Предстоящи Курсове

Свързани Kатегории