Програмування вбудованих систем на основі архітектури ARM - Робоча програма навчальної дисципліни (Силабус)
Реквізити навчальної дисципліни
Рівень вищої освіти | Перший (бакалаврський) |
---|---|
Галузь знань | 12 Інформаційні технології |
Спеціальність | 126 Інформаційні системи та технології |
Освітня програма | Інформаційне забезпечення робототехнічних систем |
Статус дисципліни | Вибіркова |
Форма навчання | очна(денна) |
Рік підготовки, семестр | 4 курс, весняний семестр |
Обсяг дисципліни | 4 кредити / 120 годин (36 годин лекцій, 18 годин лабораторних робіт, 66 годин самостійної роботи) |
Семестровий контроль/ контрольні заходи | Залік/МКР |
Розклад занять | http://rozklad.kpi.ua/ |
Мова викладання | Українська |
Інформація про керівника курсу / викладачів |
Лектор: к.т.н. Ковальов Микола Олександрович, kovua@yahoo.com, тел. 067-680-20-09 Практикум: асистент Бердник Юрій Михайлович, y.berdnyk@kpi.ua, berdniky@gmail.com |
Розміщення курсу | Кампус, Google classroom |
Програма навчальної дисципліни
Опис навчальної дисципліни, її мета, предмет вивчання та результати навчання
Навчальна дисципліна «Програмування вбудованих систем на основі архітектури ARM» покликана сформувати у студентів систему знань, вміння і навички розробки, налагодження, тестування й оптимізації системного програмного забезпечення інтелектуальних вбудованих обчислювальних та керуючих систем реального часу на базі мікроконтролерів (МК) родини ARM на основі сімейства операційних систем (ОС) Unix, що працюють в реальному масштабі часу.
Мета вивчення дисципліни – набуття фахових компетентностей, теоретичних знань і практичних навичок з керування, розробки, налагодження та вдосконалення системного, комунікаційного та програмно-апаратного забезпечення ОС.
Предмет вивчення дисципліни розробка, налагодження, тестування й оптимізація системного програмного забезпечення інтелектуальних вбудованих обчислювальних та керуючих систем реального часу на базі МК родини ARM.
Задачі вивчення дисципліни передбачають оволодіння:
1. Знаннями:
архітектури вбудованих систем реального часу на базі МК родини ARM;
особливостей програмного забезпечення (ПЗ) інтелектуальних вбудованих систем реального часу;
технології розробки, налагодження, тестування й оптимізації ПЗ вбудованих систем.
2. Навичками і вміннями:
програмувати МК для інтелектуальних вбудованих систем реального часу;
налагоджувати й тестувати інтелектуальну вбудовану систему реального часу.
Компетентності
Здатність розв'язувати складні спеціалізовані задачі та практичні проблеми в реальному часі з жорсткими вимогами й умовами за допомогою систем апаратних і програмних засобів із застосування апарату проектування, впровадження та супроводження інформаційних систем та технологій.
Загальні компетентності:
Здатність до абстрактного мислення, аналізу та синтезу | |
---|---|
Здатність застосовувати знання у практичних ситуаціях | |
Здатність до розуміння предметної області та професійної діяльності | |
Здатність спілкуватися державною та іноземною мовами як усно, так і письмово | |
Здатність вчитися і оволодівати сучасними знаннями | |
Здатність до пошуку, оброблення та аналізу інформації з різних джерел | |
Здатність розробляти та управляти проектами | |
Здатність оцінювати та забезпечувати якість виконуваних робіт |
Спеціальні (фахові, предметні) компетентності
Здатність до проектування, розробки, налагодження та вдосконалення системного, комунікаційного та програмно-апаратного забезпечення інформаційних систем та технологій, Інтернету речей (IoT), комп’ютерно-інтегрованих систем та системної мережної структури, управління ними | |
---|---|
Здатність управляти та користуватися сучасними інформаційно-комунікаційними системами та технологіями (у тому числі такими, що базуються на використанні Інтернет) | |
Здатність проводити обчислювальні експерименти, порівнювати результати експериментальних даних і отриманих рішень | |
Здатність до розробки і використання інтелектуальних технологій, методів штучного інтелекту для вирішення прикладних задач і підтримки прийняття рішень в робототехнічних системах | |
Здатність використовувати знання основ електроніки і схемотехніки, сучасної елементної бази при проектуванні мікропроцесорних пристроїв робототехнічних систем |
Програмні результати навчання
Використовувати базові сучасних інформаційних систем та технологій, навички програмування, технології безпечної роботи з інтернет-ресурсами, технологіями розроблення алгоритмів і комп’ютерних програм із застосуванням об’єктно-орієнтованого програмування для розв’язання задач проектування і використання інформаційних систем та технологій | |
---|---|
Аргументувати вибір програмних та технічних засобів для створення інформаційних систем та технологій на основі аналізу їх властивостей, призначення і технічних характеристик з урахуванням вимог до системи і експлуатаційних умов; мати навички налагодження та тестування програмних і технічних засобів інформаційних систем та технологій |
Пререквізити та постреквізити дисципліни (місце в структурно-логічній схемі навчання за відповідною освітньою програмою)
Для успішного засвоєння дисципліни студент повинен володіти освітніми компонентами: практичний курс іноземної мови, вища математика, програмування, операційні системи, теорія алгоритмів, комп’ютерні мережі, технології розроблення програмного забезпечення, інформаційно-сенсорні системи роботів, робототехнічні системи та комплекси, операційні системи мобільних роботів, комп’ютерна електроніка та мікропроцесорні системи, архітектура комп’ютерних систем, технології інтернет речей, управління технічними системами, інтелектуальні технології в робототехніці.
Зміст навчальної дисципліни
Тема 1. Основи інтелектуальних вбудованих систем.
Тема 2. Програмна складова вбудованих систем на основі МК і мікрокомп'ютерів.
Тема 3. Апаратна складова вбудованих систем на основі МК і мікрокомп'ютерів.
Тема 4. Інтелектуальні вбудовані системи як основа автономних наземних платформ.
Тема 5. Проектування, програмування і налагодження інтелектуальних вбудованих систем.
Навчальні матеріали та ресурси
Базова література:
Тарарака В.Д. Архітектура комп'ютерних систем: навчальний посібник / В.Д. Тарарака. – Житомир: ЖДТУ, 2018. – 383 с.
Новацький А.О. Архітектура новітніх мікроконтролерів: Програмування мікроконтролерів сімейства ARM: Навчальний посібник для студентів спеціальності 151 «Автоматизація та комп’ютерно–інтегровані технології» / А.О. Новацький – Київ: КПІ ім. Ігоря Сікорського, 2017–138с.
Квашнін В.О., Бабаш А.В., Квашнін В.В. Програмування та застосування мікроконтролерів STM32F4Discovery : монографія / В.О. Квашнін, А.В. Бабаш, В.В. Квашнін.– Краматорськ : ЦТРІ «Друкарський дім», 2017. – 143 с.
Сучасні напрямки комп’ютерної та мікропроцесорної техніки Розділ 1. Основні тенденції розвитку комп'ютерної і мікропроцесорної техніки. Розділ 2 Характеристики ARM і Cortex процесорів: конспект лекцій. [Електронний ресурс]: для студ. спеціальності 171 Електроніка, спеціалізації «Електронні компоненти та системи» /Т. О. Терещенко, Ю.С. Ямненко; КПІ ім. Ігоря Сікорського; уклад,– Електронні текстові данні 1 файл: 5,248 Мбайт). – Київ: КПІ ім. Ігоря Сікорського, 2020. – 68 с.
Додаткова література
Огородников И.Н. Микропроцессорная техника: введение в Cortex-M3 : учеб. пособие / И.Н. Огородников. – Екатеринбург : Изд-во Урал. ун-та, 2015. – 116 с.
Васильев А.С., Лашманов О.Ю., Пантюшин А.В. Основы программирования микроконтроллеров / А.С. Васильев, О.Ю. Лашманов, А.В. Пантюшин – СПб: Университет ИТМО, 2016.– 95с.
Паттерсон Д., Хеннесси Дж. Архитектура компьютера и проектирование компьютерных систем: – 4-е изд. / Д. Паттерсон, Дж. Хеннесси. – СПб.: Питер, 2012. -784 с.
Навчальний контент
Методика опанування навчальної дисципліни (освітнього компонента)
№ | Назва теми лекції та перелік основних питань |
---|---|
1 | Тема 1. Основи інтелектуальних вбудованих систем. |
Лекція 1. Основи теорії і практики інтелектуальних вбудованих систем. виваиив | |
Лекція 2. Проектування, розробка, налагодження, виконавчих механізмів інтелектуальних вбудованих системи. Рішення на базі МК і мінікомпьютера (Orange Pi, Pasberry Pi). | |
2 | Тема 2. Програмна складова вбудованих систем на основі МК і мікрокомп'ютерів. |
Лекція 3. Програмні рішення і операційні системи для інтелектуальних вбудованих систем на основі МК (МП) і мікрокомп'ютерів. | |
Лекція 4. Датчикі та іх програмне опитування у інтелектуальних вбудованих системах. Рішення на базі МК і мінікомпьютера (Orange Pi, Pasberry Pi). | |
3 | Тема 3. Апаратна складова вбудованих систем на основі МК і мікрокомп'ютерів. |
Лекція 5. Структура і функціональна схема вбудованих систем на основі МК і мікрокомп'ютерів. | |
Лекція 6. Базові паттерни (шаблони) програмної складової інтелектуальних вбудованих системи. Рішення на базі МК і мінікомпьютера (Orange Pi, Pasberry Pi). | |
4 | Тема 4. Інтелектуальні вбудовані системи як основа автономних наземних платформ. |
Лекція 7. Особливості будови програмної і апаратної частин автономних наземних платформ. | |
Лекція 8. Управління силовими елементами прототипів колісних роботів у режимі реального часу. Рішення на базі МК і мінікомпьютера (Orange Pi, Pasberry Pi). | |
5 | Тема 5. Проектування, програмування і налагодження інтелектуальних вбудованих систем. |
Лекція 9. Технічна документація для проектування, програмування і налагодження інтелектуальних вбудованих систем. | |
Лекція 10. Основи технології програмування, розробки і налагодження інтелектуальної вбудованої системи. Рішення на базі МК і мінікомпьютера (Orange Pi, Pasberry Pi). | |
6 | МКР Модульна контрольна робота. |
Лабораторні роботи
№ | Назва лабораторної роботи | Кількість ауд. годин |
---|---|---|
1 | Проектування, розробка, налагодження, документувння і тестування виконавчих механізмів інтелектуальних вбудованих системи. | 4 |
2 | Використання інтерфейсів послідовної передачі інформації між МК і датчиками (I2C, SPI, USART, промислових мереж). | 5 |
3 | Використання АЦП і ЦАП для реалізації функціонального вузла на базі МК (Orange Pi, Pasberry Pi). | 5 |
4 | Основи технології програмування, розробки і налагодження інтелектуальної вбудованої системи. | 4 |
В підсумку: | 18 |
Самостійна робота студента
№ | Назва теми, що виноситься на самостійне опрацювання | Кількість годин СРС |
---|---|---|
1 | Складові частини типового МК. Обчислювальне ядро (CPU), система апаратних і програмних перевивань, пам'ять для зберігання програм за технологією Flash, (FlashROM), оперативна пам’ять (RAM). | 3 |
2 | Базові характеристики серії МК STM32F1х. Послідовні інтерфейси передавання даних. Периферія. Система управління затримками по часу і тактування. Типова периферія МК STM32. Шина AHB є проміжною між APB1, APB1 і підключає контролер DMA та деякі додаткові елементи доступу. Універсальні синхронні (асинхронні) шини (USART). | 3 |
3 | Механізм скидання і переривань у МК. Поняття про регістр прапорів. Дослідження механізму переривань на прикладі таймеру. Поняття про функцію обробки переривань. Обробники переривань на прикладі таймеру і порту вводу-виводу. Поняття про вектор переривань. Розміщення векторів переривань у оперативної пам’яті. Принципи написання функції обробки переривань. Повний цикл емуляції розробки, тестування, налагодження і програмування функціонального вузла на базі МК з використанням перевивань. | 5 |
4 | Технологія DMA. Переваги і реалізація. Програмне налаштування ПДП на різні варіанти периферії МК. Аналого-цифрові перетворювачі (АЦП) у МК, призначення, основні характеристики. Приклади використання АЦП у МК на основі STM32. | 5 |
5 | Виклик віддалених процедур Remote Procedure Call (RPC). Налаштування і управління периферійними пристроями МПС на прикладі СОМ порту. Дослідження сигналу лінії TxD. Запис і читання інформації СОМ порту у синхронному режимі. | 5 |
6 | Інтерфейси. Реалізація системи передачі даних з використанням інтерфейсу SPI. Поняття про апаратну частину SPI. Програмне управління SPI для реалізації СПД на основі МК. Повний цикл емуляції розробки, тестування, налагодження програмного прикладу СПД на основі SPI. | 5 |
7 | Логічна і фізична адресація пам'яті. Віртуальна пам'ять. Динамічний розподіл пам'яті. Пули пам'яті. Куча за замовчуванням. Створення додаткового пулу пам'яті. Виділення та звільнення пам'яті в кучі. | 5 |
8 | Виконання комп’ютерних практикумів. | 10 |
9 | Підготовка до контрольних робіт. | 10 |
10 | Підготовка до заліку. | 15 |
В підсумку: | 66 |
Політика та контроль
Політика навчальної дисципліни (освітнього компонента)
Система вимог, які викладач ставить перед студентом:
кодекс честі: http://kpi.ua/code;
правила внутрішнього розпорядку: http://kpi.ua/admin-rule;
положення про організацію освітнього процесу в КПІ ім. Ігоря Сікорського: https://kpi.ua/regulations.
В разі пропущення занять з поважних причин викладач надає можливість студенту виконати усі або деякі лабораторні роботи (винятком є виконання деяких завдань у зв’язку із закінченням навчального процесу).
Протягом семестру студенти:
- виконують та захищають комп’ютерні практикуми у відповідні терміни;
- пишуть модульну контрольну роботу;
- повинні позитивно закрити 2 атестації.
По закінченні навчального процесу студенти складають залік.
Види контролю та рейтингова система оцінювання результатів навчання (РСО)
Рейтинг студента з кредитного модуля складається з балів, що він отримує за:
– виконання 4 лабораторних робіт (до 4Х20=80 балів);
– виконання контрольної роботи (до 15 балів);
активну роботу на парах (до 5 балів).
Виконання лабораторних робіт:
Оцінювання лабораторної роботи:
– якщо виконана невчасно знімається 20-40% від максимальної кількості балів в залежності від терміну запізнення;
– якщо виконана не самостійно або не у відповідності з варіантом, вона не зараховується.
Обов’язкові терміни лабораторних робіт:
«1» та «2» – до 1-о календарного контролю;
«3» та «4» – до 2-о календарного контролю.
Контрольні роботи оцінюються в 60 балів. Вона складається з 3-х питань із списку, який попередньо надає викладач.
Сума рейтингових балів, отриманих студентом протягом семестру, за умови зарахування МКР, переводиться до підсумкової оцінки згідно з таблицею.
Якщо сума балів менша за 60, але МКР зарахована, студент виконує залікову контрольну роботу. У цьому разі сума балів за виконання контрольної та залікової контрольних робіт переводиться до підсумкової оцінки згідно з таблицею.
Бали | Оцінка |
95 - 100 | Відмінно |
85 - 94 | Дуже добре |
75 - 84 | Добре |
65 - 74 | Задовільно |
60 - 64 | Достатньо |
Менше 60 | Незадовільно |
МКР не зарахована | Не допущено |
Робочу програму навчальної дисципліни (силабус):
Складено: доцент кафедри ІСТ ФІОТ, к.т.н., Ковальов Микола Олександрович
Ухвалено: кафедрою ІСТ ФІОТ (протокол № 21 від 29.06.2023)
Погоджено: Методичною комісією факультету (протокол № 11 від 29.06.2023)