Описание
Инженер умных устройств использует технологии Интернета вещей (Internet of things) для разработки гаджетов для дома, промышленных летательных аппаратов и беспилотных автомобилей. Таких специалистов также называют разработчиками встраиваемых систем или embedded-разработчиками. Они пишут код, работают с микроконтроллерами и умеют паять компоненты для умных устройств.
Новичкам
Научитесь разрабатывать устройства на базе микроконтроллеров. Сможете самостоятельно создавать сеть умных гаджетов.
Инженерам и специалистам по ремонту
Восполните недостающие знания: освоите C, разработку и отладку ПО. Расширите экспертизу и сможете развивать карьеру в IoT.
Специалистам из других сфер IT
Освоите навыки инженерии и получите специализацию в IoT. Перейдете в перспективное направление и повысите уровень дохода. В первой четверти вы освоите программирование на С. Научитесь работать с монтажным оборудованием (печатные платы, паяльник, резисторы) и разработаете свое первое электронное устройство. Также вы начнете знакомство с микроконтроллерами на примере простых в освоении устройств итальянской марки Arduino.
1. Введение в профессию (6 часов обучающего контента, 8 часов практики)
- Кто такой разработчик встраиваемых систем
- Этапы разработки устройств
- Базовые знания по физике
- Знакомство с методом пайки
2. Linux. Рабочая станция (12 часов обучающего контента, 32 часа практики)
- Введение. Установка ОС.
- Настройка и знакомство с интерфейсом командной строки.
- Пользователи. Управление Пользователями и группами.
- Загрузка ОС и процессы.
- Устройство файловой системы Linux. Понятие Файла и каталога.
- Введение в скрипты bash. Планировщики задач crontab и at.
- Управление пакетами и репозиториями. Основы сетевой безопасности.
- Введение в docker.
3. Программирование на С. Базовый уровень (20 часов обучающего контента, 62 часа практики)
- Введение в язык С
- Двоичная и шестнадцатеричная системы счислений.
- Константы. Типы данных, часть 1.
- Операторы и выражения языка С. Функции (объявление, вызов).
- Переменные. Типы данных (примитивные типы, строки, структуры).
- Управляющие операторы.
- Функции. Работа с памятью.
- Типы данных, часть 2. Основы объектно-ориентированного подхода к программированию. Пользовательские типы данных.
- Структура программы на языке С.
- Препроцессор.
- IDE и средства разработки.
- Стандартные библиотеки языка С.
- Курсовой проект. Программная утилита, реализующая интерфейс расчетов температурных режимов в доме.
4. Основы электроники (15 часов обучающего контента, 50 часов практики)
- Схемотехника. Знакомство с основными компонентами и инструментами.
- Расчеты различных соединений. Теория и практика.
- Транзисторы. Теория и практика.
- Подключение и управление различными нагрузками.
- Ток. Источники питания и фильтры. Гальваническая развязка.
- Линейные преобразователи. Современные LDO. ШИМ.
- Операционный усилитель. Логические компоненты, часть 1.
- Логические элементы, часть 2.
- Закрепление теории и практика.
- Подготовка к курсовой работе. Генератор случайного числа на семисегментных индикаторах
5. Arduino. Проектирование устройств (12 часов обучающего контента, 42 часа практики)
- Знакомство с Arduino
- Обзор доступных сенсоров. АЦП. Считывание данных. Получение данных с потенциометра и оценка угла поворота его ручки. Простая фильтрация.
- Обзор доступных средств индикации (светодиоды, светодиодные матрицы, дисплеи).
- Динамическая индикация.
- Интерфейс I2C на примере работы с датчиком влажности и температуры.
- Символьный 16х2 дисплей. Вывод данных на дисплей.
- Прерывания.
- Подготовка к курсовой работе. Настольная метеостанция.
В первый двух курсах четверти вы узнаете архитектуру ARM и выполните 2 проекта: на плате Nucleo и на основе микроконтроллеров STM 32. В третьем курсе вы изучите принципы работы технологий, обеспечивающие связь устройств между собой.
1. Микроконтроллеры. Вводный курс (12 часов обучающего контента, 42 часа практики)
- Краткий обзор существующих архитектур микроконтроллеров. Микроконтроллеры AVR и ARM
- Детальная лекция по архитектуре ARM
- Интерфейс отладки и программирования. SWD, JTAG
- Интерфейсы I2C, SPI (глубокое погружение)
- Интерфейс QSPI как возможность расширения памяти
- ACP Arduino/AVR
- Прерывания Arduino/AVR
- Подготовка к курсовой работе
2. Микроконтроллеры ARM (STM32) (18 часов обучающего контента, 58 часов практики)
- Библиотеки CMSIS, LL, HAL. Абстракция как стиль в программировании
- Среда STM32CubeMX как инструмент быстрого старта
- Среда программирования STM32CubeIDE. Вводная лекция
- DAC
- ADC
- DMA
- WWDG, IWDG
- Таймеры
- RTC
- UART
- SDIO
- Подготовка к курсовой работе
3. Базовые технологии электроники (15 часов обучающего контента, 50 часов практики)
- Bluetooth (базовая лекция)
- Протокол TCP-IP как базовый протокол Интернет. IP адресация. Маска подсети. Шлюз. Модули Wi-Fi. Основы
- LoRa Базовая лекция. Основы использования
- Применимость беспроводных решений. Базовые понятия скорости передачи данных. Дальность связи
- Аппаратные решения
- Измерение напряжения и тока: аппаратные и программные решения
- Основы построения блоков питания
- Гальваническая развязка цифровых интерфейсов. Приемо-передатчики RS232, 485, CAN FPGA/ASIC обзор
Вы освоите язык С на продвинутом уровне. Сможете применить полученные знания в разработке встраиваемых систем. Научитесь работе с операционными системами реального времени и продолжите изучение технологий Интернета вещей для связи устройств в домашней сети.
1. Программирование на Си. Продвинутый уровень (12 часов обучающего контента, 42 часа практики)
- Указатели. Указатели на структуры. Практические примеры. Ошибки программиста при работе с указателями
- Библиотеки языка Си. Обзор функций. Недостатки базовых библиотек
- Вопросы оптимизации кода
- Алгоритмы
- Компиляция и компиляторы
- Многопоточность в С
- Особенности С для IoT
- Подготовка к курсовой работе
2. RTOS (Real-Time Operating System) (12 часов обучающего контента, 42 часа практики)
- Обзорная лекция по операционным системам. Принципы работы. Ресурсы. Совместный доступ к ресурсам
- Задачи. Управление задачами. Модели распределения и управления памятью
- Очереди. Конкретные примеры и задачи. ПИД регулятор
- Семафоры. Как семафоры позволяют сократить использование процессорного времени
- Особенности отладки. Механизмы отладки. Оценка стека и кучи
- Механизм взаимодействия между задачами
- Многозадачная RTOS и прерывания
- Подготовка к курсовой работе
- 1 месяц — 8 занятий
3. Связь (12 часов обучающего контента, 42 часа практики)
- Протоколы взаимодействия устройств
- Wi-Fi (низкий уровень протокола)
- BLE/Bluetooth (низкий уровень протоколов)
- Низкоуровневое взаимодействие устройств (канальный слой)
- HASH и контрольные суммы
- Распространенные методы шифрования и авторизации
- Избыточность данных в протоколах связи
- Курсовая работа. Взаимодействие с MQTT сервером
Вы получите опыт разработки устойчивых к отказам распределенных устройств, выполните финальный проект, пройдете курс о том, как готовиться к собеседованиям, и сможете сделать первый шаг в профессию на позицию junior.
1. Распределенные сети / Дипломная работа (12 часов обучающего контента, 42 часа практики)
- Вводный урок, знакомство с распределенной сетью Master/Slave
- Режим работы устройства, методы построения
- Отказоустойчивость сети, смена роли устройства
- Брокеры задач, броадкаст задач
- Моделирование отказов
- Построение прототипа сети
- Тестирование устойчивости
- Дипломная работа. Распределенная сеть устройств
2. К чему готовиться на собеседовании (12 часов обучающего контента, 42 часа практики)
- Подготовка резюме
- Коммуникационные навыки и другие Soft Skills
- Техническое собеседование, типы и варианты #1
- Техническое собеседование, решение задач #2
- Техническое собеседование, тестовый проект #3
- Какие вопросы задавать рекрутеру
- Согласие на оффер
- Ревью резюме
В первой четверти вы освоите программирование на С. Научитесь работать с монтажным оборудованием (печатные платы, паяльник, резисторы) и разработаете свое первое электронное устройство. Также вы начнете знакомство с микроконтроллерами на примере простых в освоении устройств итальянской марки Arduino.
1. Введение в профессию (6 часов обучающего контента, 8 часов практики)
- Кто такой разработчик встраиваемых систем
- Этапы разработки устройств
- Базовые знания по физике
- Знакомство с методом пайки
2. Linux. Рабочая станция (12 часов обучающего контента, 32 часа практики)
- Введение. Установка ОС.
- Настройка и знакомство с интерфейсом командной строки.
- Пользователи. Управление Пользователями и группами.
- Загрузка ОС и процессы.
- Устройство файловой системы Linux. Понятие Файла и каталога.
- Введение в скрипты bash. Планировщики задач crontab и at.
- Управление пакетами и репозиториями. Основы сетевой безопасности.
- Введение в docker.
3. Программирование на С. Базовый уровень (20 часов обучающего контента, 62 часа практики)
- Введение в язык С
- Двоичная и шестнадцатеричная системы счислений.
- Константы. Типы данных, часть 1.
- Операторы и выражения языка С. Функции (объявление, вызов).
- Переменные. Типы данных (примитивные типы, строки, структуры).
- Управляющие операторы.
- Функции. Работа с памятью.
- Типы данных, часть 2. Основы объектно-ориентированного подхода к программированию. Пользовательские типы данных.
- Структура программы на языке С.
- Препроцессор.
- IDE и средства разработки.
- Стандартные библиотеки языка С.
- Курсовой проект. Программная утилита, реализующая интерфейс расчетов температурных режимов в доме.
4. Основы электроники (15 часов обучающего контента, 50 часов практики)
- Схемотехника. Знакомство с основными компонентами и инструментами.
- Расчеты различных соединений. Теория и практика.
- Транзисторы. Теория и практика.
- Подключение и управление различными нагрузками.
- Ток. Источники питания и фильтры. Гальваническая развязка.
- Линейные преобразователи. Современные LDO. ШИМ.
- Операционный усилитель. Логические компоненты, часть 1.
- Логические элементы, часть 2.
- Закрепление теории и практика.
- Подготовка к курсовой работе. Генератор случайного числа на семисегментных индикаторах
5. Arduino. Проектирование устройств (12 часов обучающего контента, 42 часа практики)
- Знакомство с Arduino
- Обзор доступных сенсоров. АЦП. Считывание данных. Получение данных с потенциометра и оценка угла поворота его ручки. Простая фильтрация.
- Обзор доступных средств индикации (светодиоды, светодиодные матрицы, дисплеи).
- Динамическая индикация.
- Интерфейс I2C на примере работы с датчиком влажности и температуры.
- Символьный 16х2 дисплей. Вывод данных на дисплей.
- Прерывания.
- Подготовка к курсовой работе. Настольная метеостанция.
Отзывы
Отзывов пока нет.