Проєктування мікропроцесорних систем на базі Arduino та Raspberry - Робоча програма навчальної дисципліни (Силабус)

Реквізити навчальної дисципліни

Рівень вищої освіти Перший (бакалаврський)
Галузь знань 12 Інформаційні технології
Спеціальність 126 Інформаційні системи та технології
Освітня програма Інформаційні управляючі системи та технології
Статус дисципліни вибіркова
Форма навчання очна(денна)
Рік підготовки, семестр 4 курс, осінній семестр
Обсяг дисципліни 120 год.
Семестровий контроль/ контрольні заходи залік
Розклад занять
Мова викладання Українська
Інформація про
керівника курсу / викладачів

Лектор: к.т.н., доцент, Голубєв Леонтій Петрович, golubevl@ukr.net

Лабораторні: доцент, Голубєв Леонтій Петрович, golubevl@ukr.net

Розміщення курсу Кампус

Програма навчальної дисципліни

  1. Опис навчальної дисципліни, її мета, предмет вивчання та результати навчання

Дисципліна «Проектування мікропроцесорних систем на базі Arduino та Raspberry» є вибірковою дисципліною та вивчає сучасні технології проектування мікропроцесорних систем.

Мета вивчення дисципліни набуття фахових компетентностей, теоретичних знань і практичних навичок з програмування мікропроцесорних систем.

Предметом вивчення дисципліни є методи та засоби програмування мікропроцесорних систем.

Компетентності:

Інтегральна компетентність: Здатність розв'язувати складні спеціалізовані задачі та практичні проблеми у галузі програмування мікропроцесорних систем, розробки програм для мікропроцесорних систем мовами assembler,C++, Processing, моделювання роботи мікропроцесорних систем за допомогою системи Proteus.

КЗ 1 Здатність до абстрактного мислення, аналізу та синтезу
КЗ 2 Здатність застосовувати знання у практичних ситуаціях
КЗ 3 Здатність до розуміння предметної області та професійної діяльності
КЗ 4 Здатність спілкуватися державною та іноземною мовами як усно, так і письмово
КЗ 5 Здатність вчитися і оволодівати сучасними знаннями

Спеціальні (фахові, предметні) компетентності

КС 1 Здатність аналізувати об’єкт проектування або функціонування та його предметну область
КС 2 Здатність застосовувати стандарти в області інформаційних систем та технологій при розробці функціональних профілів, побудові та інтеграції систем, продуктів, сервісів і елементів інфраструктури
КС 3 Здатність до проектування, розробки, налагодження та вдосконалення системного, комунікаційного та програмно-апаратного забезпечення інформаційних систем та технологій, Інтернету речей (IoT), комп’ютерно-інтегрованих систем та системної мережної структури, управління ними
КС 4 Здатність проектувати, розробляти та використовувати засоби реалізації інформаційних систем, технологій та інфокомунікацій (методичні, інформаційні, алгоритмічні, технічні, програмні та інші)
КС 12 Здатність управляти та користуватися сучасними інформаційно-комунікаційними системами та технологіями (у тому числі такими, що базуються на використанні Інтернет)

Згідно з вимогами освітньо-професійної програми студенти після засвоєння навчальної дисципліни мають продемонструвати такі результати навчання:

ПР 3 Використовувати базові знання інформатики й сучасних інформаційних систем та технологій, навички програмування, технології безпечної роботи в комп'ютерних мережах, методи створення баз даних та інтернет-ресурсів, технології розроблення алгоритмів і комп’ютерних програм мовами високого рівня із застосуванням об’єктно-орієнтованого програмування для розв’язання задач проектування і використання інформаційних систем та технологій

ПР 4 Проводити системний аналіз об’єктів проектування та обґрунтовувати вибір структури, алгоритмів та способів передачі інформації в інформаційних системах та технологіях

ПР 12 Знати основи побудови та застосовувати сучасні операційні системи та пакети прикладних програм відповідно до професійних завдань

ПР 14 Знати сучасні мови програмування та технології створення програмного забезпечення інформаційних систем та технологій

  1. Пререквізити та постреквізити дисципліни (місце в структурно-логічній схемі навчання за відповідною освітньою програмою)

Перелік дисциплін, що передують: Комп’ютерні мережі, Бази даних, Архітектура комп’ютерих систем.

Перелік дисциплін, що забезпечуються: Алгоритми та структури даних; Дискретні структури; Емпіричні методи програмної інженерії; Моделювання та аналіз програмного забезпечення; Якість програмного забезпечення та тестування; Системний аналіз.

  1. Зміст навчальної дисципліни

Розділ 1. Проектування МПС на базі Arduino. Перше знайомство з Arduino

Тема 1.1. Arduino. Цифрові і аналогові контакти введення-виведення

Тема 1.2. Arduino. Джерела живлення.

Тема 1.3. Структура програми для Arduino.

Тема 1.4. Процесор та цифрові шини. Шини даних, адресу та управління

Тема 1.6. Принцип дії мікропроцесорної системи

Розділ 2. Arduino. Цифрові порти введення-виведення, широко-імпульсна модуляція (ШІМ), робота з кнопкою.

Тема 2.1. Програмування цифрових виводів.

Тема 2.2. Широко-імпульсна модуляція (ШІМ).

Тема 2.3. Зчитування даних з цифрових контактів..

Тема 2.4. Робота з кнопкою. Усунення «брязкоту» кнопок.

Розділ 3. Arduino. Робота з аналоговими датчиками.

Тема 3.1. Перетворення аналогового сигналу в цифровий

Тема 3.2. Читання даних з потенціометра.

Тема 3.3. Використання аналогових датчиків.

Тема 3.4. Управління аналоговими виходами по сигналу від аналогових входів

Тема 3.5. Незалежна пам'ять даних (ЕЕРВОМ).

Тема 3.6. Підсистема введення-виведення. Система переривань. Призначення системи переривань. Управління системою переривань. Алгоритм роботи системи переривань.

Тема 3.7. Таймери-лічильники. Режими роботи таймерів.

Розділ 4. Робота з серво та кроковим двигунами.

Тема 4.1. Arduino. Робота із серво-приводом.

Тема 4.2 Робота з кроковим двигуном.

Тема 4.3. Просте обертання мотора. Керування напрямком обертання за допомогою кнопки.

Розділ 5. Arduino Робота з LCD - дисплеєм. .

Тема 5.1. Схема підключення пристроїв I2C.

Тема 5.2. Взаємодія і ідентифікація I2C пристроїв.

Тема 5.3. Коротка характеристика LCD – дисплею (1602 LCD).

Тема 5.4. Створення власних символів.

Розділ 6. Робота з 7 - сегментними індикаторами.

Тема 6.1. Робота з одно-розрядним 7 – сегментним індикатором.

Тема 6.2. Робота з чотирьох розрядним 7 – сегментним індикатором.

Тема 6.3. Робота з чотирьох-розрядним 7-сегментним індикатором.

Розділ 7. Проектування систем на базі мікро-комп’ютера Raspberry Pi. Робота з GPIO.

Тема 7.1. . Мікрокомп'ютер Raspberry PI.

Тема 7.2. Робота з інтерфейсом GPIO.

Розділ 8. Робота з ОС Raspbian.

Тема 8.1 Інсталяція та налагодження ОС Raspbian

Тема 8.2 Встановлення ПЗ:

Файлового менеджера Midnight Commander (mc)

Медіа-плейєра VLC

Програму для створення screenshots – scrot

Тема 8.3 Підключення WEB-камери та бібліотеки OpenCV

Розділ 9. Проектування МПС на базі мікро-комп’ютера Raspberry Pi. Робота з протоколом MQTT.

Тема 9.1 Встановлення серверу та клієнта mosquito на OS.

Тема 9.2 Виконання підписки на відповідний topic.

Тема 9.3 Передача повідомлення терміналам, які підписані на відповідний topic.

Тема 9.4 Перевірка роботи системи за допомогою сервісу HiveMQ

  1. Навчальні матеріали та ресурси

Основна література

  1. Засорнов О.С. Програмування мікроконтролерних та робототехнічних систем, - Кондор,

    2023.- 280с.

  2. Трегуб В.Г. Проектування систем автоматизації, - Ліра-К, 2019. – 344 с. *

Додаткова література

  1. М Мonk S Programming Arduino: Getting Started with Sketches, Third Edition —McGrew Hill, 2022.- 176 p.
  2. Arsath Natheem S. Arduino Book for Beginners : GETTING STARTED WITH ARDUINO AND BASIC PROGRAMMING WITH PROJECTS (New Edition 2022).— 178 p.
  3. Massimo Banzi. Getting Started with Arduino, 2019. — O'Reilly, 2019. – 212 p.
  4. Arduino Official Home Page https://www.arduino.cc/ Info on hardware, some libraries for sensors, the integrated development environment (IDE) and reference material on commands and structures www.instructables.com : Info on DIY projects prepared by others
  5. Arduino Official Project Pages https://create.arduino.cc/projecthub
  6. https://learn.adafruit.com Adafruit makes many shields and sensors, and they have tutorials for almost everything they carry http://www.arduinoclassroom.com/index.php/arduino-101*
  7. Arduino Classroom is currently doing an intro series on Arduinos. Check it for updates and more topics in the future
  8. http://playground.arduino.cc/ Arduino playground is the wiki run by the Arduino Company for its products. There is a lot of helpful information on almost everything imaginable here.
  9. Exploring Arduino: Tools and Techniques for Engineering Wizardry; 2nd Ed; Jeremy Blum; Wiley; 512 pages; 2019;
  10. Programming Arduino Next Steps: Going Further with Sketches; 2nd Ed; Simon Monk; McGraw-Hill Education; 320 pages; 2018;
  11. The Official Raspberry Pi Handbook 2024: Astounding projects with Raspberry Pi computers. Raspberry Pi Press. – 2023.- 200 p.
  12. Donald Norris. Raspberry Pi Electronics Projects for the Evil Genius.- McGraw-Hill Education. – 2020. – 281 p.
  13. Arush Kakkar. Raspberry Pi By Example: Start building amazing projects with the Raspberry Pi right out of the box. – PucktPublishing. – 2016.- 294 p.
  14. Gareth Halfacree. Raspberry Pi Beginner's Guide 4th Edition. - Raspberry Pi Press. – 2018.- 214 p.
  15. Kent Goldson. Raspberry PI for Beginners: A Complete Guide for Beginners and Pro with Illustrations and Practical Examples to Master PI. - Independently Published. – 2020.- 78 p.

Навчальний контент

  1. Методика опанування навчальної дисципліни (освітнього компонента)

Лекційні заняття

№ з/п Назва теми лекції та перелік основних питань
1

Розділ 1. Проектування МПС на базі Arduino. Перше знайомство з Arduino

Тема 1.1 Arduino. Цифрові і аналогові контакти введення-виведення

Тема 1.2 Arduino. Джерела живлення.

Тема 1.3 Структура програми для Arduino.

Тема 1.4 Процесор та цифрові шини. Шини даних, адресу та управління

Тема 1.5 Принцип дії мікропроцесорної системи

2

Розділ 2. Arduino. Цифрові порти введення-виведення, широко-імпульсна модуляція (ШІМ), робота з кнопкою.

Тема 2.1 Програмування цифрових виводів.

Тема 2.2 Широко-імпульсна модуляція (ШІМ).

Тема 2.3 Зчитування даних з цифрових контактів..

Тема 2.4 Робота з кнопкою. Усунення «брязкоту» кнопок.

3

Розділ 3. Arduino. Робота з аналоговими датчиками.

Тема 3.1 Перетворення аналогового сигналу в цифровий

Тема 3.2 Читання даних з потенціометра.

Тема 3.3 Використання аналогових датчиків.

Тема 3.4 Управління аналоговими виходами по сигналу від аналогових входів

Тема 3.5 Незалежна пам'ять даних (ЕЕРВОМ).

Тема 3.6 Підсистема введення-виведення. Система переривань. Призначення системи переривань. Управління системою переривань. Алгоритм роботи системи переривань.

Тема 3.7 Таймери-лічильники. Режими роботи таймерів.

4

Розділ 4. Робота з серво та кроковим двигунами.

Тема 4.1 Arduino. Робота із сервопріводом.

Тема 4.2 Робота з кроковим двигуном.

Тема 4.3 Просте обертання мотора. Керування напрямком обертання за допомогою кнопки.

5

Розділ 5. Arduino Робота з LCD - дисплеєм.. .

Тема 5.1 Схема підключення пристроїв I2C.

Тема 5.2 Взаємодія і ідентифікація I2C пристроїв.

Тема 5.3 Коротка характеристика LCD – дисплею (1602 LCD).

Тема 5.4 Створення власних символів.

6

Розділ 6. Робота з 7 - сегментними індикаторами.

Тема 6.1 Робота з одно-розрядним 7 – сегментним індикатором.

Тема 6.2 Робота з чотирьох розрядним 7 – сегментним індикатором.

Тема 6.3 Робота з чотирьох-розрядним 7-сегментним індикатором.

7

Розділ 7. Проектування систем на базі мікро-комп’ютера Raspberry Pi. Робота з GPIO.

Тема 7.1 Мікрокомп'ютер Raspberry PI.

Тема 7.2 Робота з інтерфейсом GPIO.

8

Розділ 8. Робота з ОС Raspbian.

Тема 8.1 Інсталяція та налагодження ОС Raspbian

Тема 8.2 Встановлення ПЗ:

Файлового менеджера Midnight Commander (mc)

Медіа-плейєра VLC

Програму для створення screenshots – scrot

Тема 8.3 Підключення WEB-камери та бібліотеки OpenCV

9

Розділ 9. Проектування МПС на базі мікро-комп’ютера Raspberry Pi. Робота з протоколом MQTT.

Тема 9.1 Встановлення серверу та клієнта mosquito на OS.

Тема 9.2 Виконання підписки на відповідний topic.

Тема 9.3 Передача повідомлення терміналам, які підписані на відповідний topic.

Тема 9.4 Перевірка роботи системи за допомогою сервісу HiveMQ.

7. Лабораторні заняття

Лабораторні заняття мають на меті закріпити теоретичні знання студентів, допомогти їм оволодіти способами роботи з сучасними технологіями програмування мікропроцесорних систем, засвоїти методи, що використовуються для проектування мікропроцесорних систем.

№ з/п Назва лабораторної роботи Кількість аудиторних годин
1 Лабораторна робота №1: Проектування МПС на базі Arduino. Перше знайомство з Arduino 2
2 Лабораторна робота №2: Проектування МПС на базі Arduino. Цифрові порти введення-виведення, широко-імпульсна модуляція (ШІМ), робота з кнопкою. 2
3 Лабораторна робота №3: Проектування МПС на базі Arduino. Робота з аналоговими датчиками 2
4 Лабораторна робота №4: Проектування МПС на базі Arduino. Робота з серво та кроковим двигунами. 2
5 Лабораторна робота №5: Проектування МПС на базі Arduino. Робота з LCD - дисплеєм. 2
6 Лабораторна робота №6: Проектування МПС на базі Arduino. Робота з 7 - сегментними індикаторами. 2
7 Лабораторна робота №7: Проектування систем на базі мікро-комп’ютера Raspberry Pi. Робота з GPIO. 2
8 Лабораторна робота №8: Проектування МПС на базі мікро-комп’ютера Raspberry Pi. Робота з ОС Raspbian. 2
9 Лабораторна робота №9: Проектування МПС на базі мікро-комп’ютера Raspberry Pi. Робота з протоколом MQTT. 2
  1. Самостійна робота студента/аспіранта

№ з/п Назви тем і питань, що виноситься на самостійне опрацювання Кількість годин СРС
1 Тема 1 Проектування МПС на базі Arduino та Raspberry. Робота з таймером 21
2 Тема 2. Проектування МПС на базі Arduino та Raspberry. Робота з переріваннями 21
3 Тема 3. Проектування МПС на базі Arduino та Raspberry. Робота з серво двигунами 21
4 Тема 4. Проектування МПС на базі Arduino та Raspberry. Робота з кроковими двигунами 21

Політика та контроль

  1. Політика навчальної дисципліни (освітнього компонента)

  2. Види контролю та рейтингова система оцінювання результатів навчання (РСО)

Поточний контроль: опитування за темою заняття

Календарний контроль: провадиться двічі на семестр як моніторинг поточного стану виконання вимог силабусу.

Семестровий контроль: залік

Умови допуску до семестрового контролю: зарахування усіх лабораторних робіт

Рейтинг студента з дисципліни складається з балів, що він отримує за:

1) відповідей на лабораторних заняттях;

3) відповідь на заліку.

Система рейтингових (вагових) балів та критерії оцінювання

1. Робота на лабораторних заняттях

Ваговий бал відповідно до табл. 1. Максимум - 70 балів.

2. Модульний контроль

Ваговий бал – 30.

Табл. 1

Поточне оцінювання та самостійна робота* МК ** (тестовий) Сума
Т1 Т2 Т3 Т4 Т5 Т6 Т7 Т8 Т9
5 5 5 5 10 10 10 10 10 30 100

Таблиця відповідності рейтингових балів оцінкам за університетською шкалою:

Кількість балів Оцінка
100-95 Відмінно
94-85 Дуже добре
84-75 Добре
74-65 Задовільно
64-60 Достатньо
Менше 60 Незадовільно
Не виконані умови допуску Не допущено
  1. Додаткова інформація з дисципліни (освітнього компонента)

Робочу програму навчальної дисципліни (силабус):

Складено доцент, к.т.н., доцент, Голубєв Леонтій Петрович

Ухвалено кафедрою інформаційних систем та технологій (протокол № _17_ від _26.06.24_ )

Погоджено Методичною комісією факультету інформатики та обчислювальної техніки (протокол № _11_ від __26.06.24___)