Please use this identifier to cite or link to this item: https://er.chdtu.edu.ua/handle/ChSTU/9683
Title: Програмне забезпечення для управління роботом-прибиральником зі штучним зором
Authors: Андрієнко, Володимир Олександрович
Говорун, Богдан Олександрович
Keywords: РОБОТОТЕХНІКА;КОМП’ЮТЕРНИЙ ЗІР;НАВІГАЦІЯ;АВТОНОМНІ СИСТЕМИ;ОБРОБКА ЗОБРАЖЕНЬ;ШТУЧНИЙ ІНТЕЛЕКТ.
Issue Date: 11-Jun-2026
Abstract: Актуальність теми полягає у необхідності створення інтелектуальних систем управління роботами, які здатні працювати у складних умовах та забезпечувати високу ефективність прибирання. Метою роботи є розробка програмного забезпечення для управління роботом-прибиральником із застосуванням методів комп’ютерного зору та інтелектуальної навігації. Основні положення і результати кваліфікаційної роботи бакалавра доповідалися і були обговорені на конференції «День студентської науки кафедри КНСА», 22 квітня 2026 року, Черкаси, Україна. Практичне значення отриманих результатів полягає у можливості використання розробленого програмного забезпечення при створенні автономних роботизованих систем побутового призначення, а також у навчальному процесі спеціальності 122 «Комп’ютерні науки».
URI: https://er.chdtu.edu.ua/handle/ChSTU/9683
Appears in Collections:122 Комп’ютерні науки (Комп’ютерні науки та прикладне програмування)

Files in This Item:
File Description SizeFormat 
Пояснювальна записка_Говорун Богдан_КН-2201_2025-2026.pdf
  Restricted Access
4.47 MBAdobe PDFView/Open Request a copy


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.

Extracted text
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ 
ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ 
Факультет інформаційних технологій і систем 
Кафедра комп’ютерних наук та системного аналізу 
Пояснювальна записка 
до кваліфікаційної роботи 
      бакалавра 
 (освітньо-кваліфікаційний рівень) 
на тему: «Програмне забезпечення для управління роботом-прибиральником 
зі штучним зором» 
Виконав: студент 4 курсу, групи КН-2201 
спеціальності 122 «Комп’ютерні науки» 
   (шифр і назва спеціальності) 
Освітня програма «Комп’ютерні науки та 
         (назва освітньої програми) 
прикладне програмування» 
Богдан ГОВОРУН 
Керівник   Володимир АНДРІЄНКО   
                 (прізвище та ініціали) 
Рецензент              Віктор АНТОНЮК         
(прізвище та ініціали) 
Черкаси 2026 року 
  2 
 
Бланк завдання на кваліфікаційну роботу бакалавра студенту 
 
Черкаський державний технологічний університет 
Факультет Інформаційних технологій і систем 
Кафедра Комп’ютерних наук та системного аналізу 
Освітньо-кваліфікаційний рівень Бакалавр 
Спеціальність 122 – комп’ютерні науки  
Освітня програма Комп’ютерні науки та прикладне програмування 
 
 
ЗАТВЕРДЖУЮ 
Завідувач кафедри КНСА  
_______________ Юрій ТРИУС 
«____» _____________ 2026 р. 
 
 
ЗАВДАННЯ 
на кваліфікаційну роботу бакалавра студенту 
Говоруну Богдану Олександровичу 
(прізвище, ім‘я, по батькові) 
1. Тема роботи    Програмне забезпечення для управління роботом-прибиральником зі 
                                     штучним зором 
Керівник роботи  Андрієнко Володимир Олександрович к.т.н., доцент 
(прізвище, ім’я, по батькові, науковий ступінь, вчене звання) 
затверджені наказом університету від « 12 » березня 2026 р. № 56/03-03. 
2. Строк подання студентом роботи  «08» червня 2026 року  
3. Вихідні дані до роботи:  
Звіт з переддипломної практики.  
Середовище розробки Python + OpenCV. Алгоритми комп’ютерного зору. 
Методи навігації мобільних роботів апаратна платформа (Raspberry Pi або аналог). 
Практичні навики роботи з інформаційними ресурсами. Робота з базами даних. 
4. Зміст пояснювальної записки (перелік питань, що їх належить розробити): 
Вступ 
4.1. Аналіз предметної області. 
4.2. Проєктування системи. 
4.3. Розробка та реалізація. 
4.4. Тестування та оцінка. 
Висновки.  
 5. Перелік додатків (з точним зазначенням назв додатків): 
 5.1. Додаток А. Специфікація 482.ЧДТУ. 62284-01. 
5 . 2. Додаток Б . Лістинг ко ду програми. 
5.3. Додаток В. Інструкція користувача. 
5.4. Додаток Г. Схеми підключень. 
5.5. Додаток Д. Апробація результатів роботи. 
 
  3 
 
5.6. Презентація у вигляді 28 слайдів. 
6. Консультанти розділів роботи 
Прізвище, ініціали та Підпис, дата 
Розділ посада 
консультанта завдання видав завдання прийняв 
    
    
 
7. Дата видачі завдання 12.01.2026 р. 
  
 
КАЛЕНДАРНИЙ ПЛАН 
№ з/п Назва етапів кваліфікаційної роботи бакалавра Строк виконання 
етапів роботи Примітка 
1 Видача завдання на кваліфікаційну роботу 
бакалавра. до 15.01.2026 Виконано 
2 Аналіз літературних джерел, об’єкту та Виконано 
предмету дослідження. до 12.02.2026 
3 Написання теоретичного розділу кваліфікаційної Виконано 
роботи бакалавра. до 18.03.2026 
4 Написання аналітичного розділу (аналіз об’єкту Виконано 
й предмету дослідження). до 01.04.2026 
5 Написання практичних розділів й висновків по до 01.05.2026 Виконано 
роботі. 
6 Передзахист кваліфікаційної роботи бакалавра Виконано 
до 03.06.2026 
на засіданні кафедри КНСА. 
7 Подання роботи завідувачу кафедри КНСА. до 10.06. 2026 Виконано 
8 Захист кваліфікаційної роботи бакалавра. 10.06.2026 Виконано 
    
    
    
    
 
 
Студент                                     _________________  _____       / Богдан ГОВОРУН   /  
                                                                                                        (підпис)                                                                    ПІБ 
 
Керівник роботи                     ________________________     / Володимир АНДРІЄНКО  / 
                                           (підпис)                                                                   ПІБ 
 
 
  4 
 
РЕФЕРАТ 
Кваліфікаційна робота бакалавра: 103 с., 30 рис., 1  табл., 25 джерел, 5 
додатків. 
Актуальність теми. Актуальність теми полягає у необхідності створення 
інтелектуальних систем управління роботами, які здатні працювати у складних 
умовах та забезпечувати високу ефективність прибирання. 
Мета роботи і задачі дослідження. Метою роботи є розробка програмного 
забезпечення для управління роботом-прибиральником із застосуванням методів 
комп’ютерного зору та інтелектуальної навігації. 
Для досягнення поставленої мети необхідно вирішити такі завдання: 
− провести аналіз існуючих роботизованих систем прибирання;  
− дослідити сучасні методи комп’ютерного зору;  
− спроєктувати архітектуру програмної системи;  
− реалізувати алгоритми обробки зображень та навігації;  
− провести тестування та оцінку ефективності системи.  
Об’єкт дослідження – автономні роботизовані системи побутового 
призначення. 
Предмет дослідження – програмне забезпечення управління мобільним 
роботом із використанням технологій комп’ютерного зору. 
Методи дослідження. У роботі використано методи комп’ютерного зору та 
цифрової обробки зображень, зокрема сегментацію, контурний аналіз та детекцію 
об’єктів, а також алгоритми навігації мобільних роботів і уникнення перешкод. 
Крім того, застосовано методи моделювання програмних систем, модульного 
проєктування та розробки програмного забезпечення з використанням сучасних 
інструментів. 
У процесі виконання роботи проведено аналіз сучасних роботизованих 
систем прибирання, методів навігації автономних роботів та технологій обробки 
зображень. Визначено функціональні обмеження існуючих рішень і сформовано 
вимоги до розроблюваної системи. 
 
  5 
 
Розроблено архітектуру програмної системи, що включає модулі захоплення 
відеопотоку, обробки зображення, прийняття рішень та керування рухом. 
Реалізовано алгоритми попередньої обробки зображень, детекції об’єктів і 
уникнення перешкод на основі бібліотек комп’ютерного зору та сучасних 
програмних засобів. 
У результаті експериментального дослідження встановлено, що розроблена 
система забезпечує точність виявлення перешкод на рівні 85–92% та працює у 
режимі реального часу з частотою обробки до 20 кадрів за секунду. Використання 
запропонованих алгоритмів дозволило зменшити довжину маршруту руху робота 
на 20–30% у порівнянні з реактивними методами навігації. 
Апробація результатів роботи. Основні положення і результати 
кваліфікаційної роботи бакалавра доповідалися і були обговорені на конференції 
«День студентської науки кафедри КНСА», 22 квітня  2026 року, Черкаси, 
Україна. 
Практичне значення отриманих результатів полягає у можливості 
використання розробленого програмного забезпечення при створенні автономних 
роботизованих систем побутового призначення, а також у навчальному процесі 
спеціальності 122 «Комп’ютерні науки». 
Ключові слова: РОБОТОТЕХНІКА, КОМП’ЮТЕРНИЙ ЗІР, НАВІГАЦІЯ, 
АВТОНОМНІ СИСТЕМИ, ОБРОБКА ЗОБРАЖЕНЬ, ШТУЧНИЙ ІНТЕЛЕКТ.    
ABSTRACT 
Bachelor’s Qualification Thesis: 103 pages, 30 figures, 1 table, 25 references, 5 
appendices. 
Relevance of the topic. The relevance of the topic lies in the need to develop 
intelligent robot control systems capable of operating in complex environments and 
ensuring high efficiency of cleaning processes. 
Purpose and objectives of the research. The purpose of this work is to develop 
software for controlling a cleaning robot using computer vision methods and intelligent 
navigation algorithms. 
To achieve this goal, the following tasks must be solved: 
 
  6 
 
− to analyze existing robotic cleaning systems;  
− to study modern computer vision methods;  
− to design the architecture of the software system;  
− to implement image processing and navigation algorithms;  
− to perform testing and evaluate the system efficiency.  
Object of research – autonomous robotic systems for household applications. 
Subject of research – software for controlling a mobile robot using computer 
vision technologies. 
Research methods. The work employs methods of computer vision and digital 
image processing, including segmentation, contour analysis, and object detection, as 
well as mobile robot navigation and obstacle avoidance algorithms. In addition, 
methods of software system modeling, modular design, and software development using 
modern tools are applied. 
During the research, an analysis of modern robotic cleaning systems, navigation 
methods for autonomous robots, and image processing technologies was carried out. 
Functional limitations of existing solutions were identified, and requirements for the 
developed system were formulated. 
The architecture of the software system was developed, including modules for 
video capture, image processing, decision-making, and motion control. Algorithms for 
image preprocessing, object detection, and obstacle avoidance were implemented using 
computer vision libraries and modern software tools. 
Experimental studies showed that the developed system provides obstacle 
detection accuracy at the level of 85–92% and operates in real time with a processing 
rate of up to 20 frames per second. The use of the proposed algorithms reduced the 
robot’s path length by 20–30% compared to reactive navigation methods. 
Approbation of results. The main provisions and results of the bachelor’s 
qualification thesis were presented and discussed at the conference “Student Science 
Day of the CNSA Department,” April 22, 2026, Cherkasy, Ukraine. 
 
  7 
 
Practical significance. The obtained results can be used for the development of 
autonomous robotic systems for household applications, as well as in the educational 
process for specialty 122 “Computer Science.” 
Keywords: ROBOTICS, COMPUTER VISION, NAVIGATION, 
AUTONOMOUS SYSTEMS, IMAGE PROCESSING, ARTIFICIAL 
INTELLIGENCE. 
 
 
 
  8 
 
ЗМІСТ 
ПЕРЕЛІК УМОВНИХ ПОЗНАЧЕНЬ, СИМВОЛІВ, СКОРОЧЕНЬ І 
ТЕРМІНІВ….10 
ВСТУП  ............................................................................................................................ 11 
1 АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ ........................................................................... 13 
1.1 Сучасні роботизовані системи прибирання ..................................................... 14 
1.2 Методи навігації роботів ................................................................................... 16 
1.3 Технології комп’ютерного зору ........................................................................ 22 
1.4 Аналіз існуючих рішень .................................................................................... 29 
Висновки до розділу 1 ............................................................................................. 34 
2 ПРОЄКТУВАННЯ ПРОГРАМНОЇ СИСТЕМИ ....................................................... 36 
2.1 Загальна архітектура системи ........................................................................... 36 
2.2 Декомпозиція системи ....................................................................................... 43 
2.3 UML-моделювання системи .............................................................................. 45 
2.4 Формалізація задачі навігації  ........................................................................... 49 
2.5 Алгоритм роботи системи ................................................................................. 50 
2.6 Вибір технологій реалізації ............................................................................... 52 
Висновки до розділу 2 ............................................................................................. 52 
3 РОЗРОБКА ТА РЕАЛІЗАЦІЯ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ ...................... 54 
3.1 Загальна структура програмної реалізації ....................................................... 54 
3.2 Реалізація модуля захоплення відео ................................................................. 56 
3.3 Реалізація модуля обробки зображення ........................................................... 57 
3.4 Реалізація алгоритму уникнення перешкод  .................................................... 59 
3.5 Реалізація модуля керування рухом  ................................................................. 63 
3.6 Інтеграція модулів системи  .............................................................................. 64 
3.7 Реалізація інтерфейсу користувача  .................................................................. 65 
Висновки до розділу 3 ............................................................................................. 67 
4 ТЕСТУВАННЯ ТА ОЦІНКА ЕФЕКТИВНОСТІ СИСТЕМИ  ................................ 68 
4.1 Мета та завдання тестування ............................................................................ 68 
 
  9 
 
4.2 Умови проведення експерименту ..................................................................... 69 
4.3 Метрики оцінювання ......................................................................................... 73 
4.4 Результати тестування ........................................................................................ 73 
4.5 Аналіз результату ............................................................................................... 77 
Висновки до розділу 4 ............................................................................................. 78 
ВИСНОВКИ  ................................................................................................................... 80 
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ  ..................................................................... 82 
ДОДАТОК А. Специфікація 482.ЧДТУ. 62284-01....................................................... 84 
ДОДАТОК Б. Лістинг коду програми ........................................................................... 86 
ДОДАТОК В. Інструкція користувача .......................................................................... 90 
ДОДАТОК Г. Схеми підключень .................................................................................. 94 
ДОДАТОК Д. Апробація результатів роботи ............................................................ 101 
 
 
  10 
 
ПЕРЕЛІК УМОВНИХ ПОЗНАЧЕНЬ, СИМВОЛІВ, СКОРОЧЕНЬ І 
ТЕРМІНІВ 
AI – Artificial Intelligence (штучний інтелект); 
API – Application Programming Interface (інтерфейс програмування застосунків); 
CV – Computer Vision (комп’ютерний зір); 
DL – Deep Learning (глибинне навчання); 
ML – Machine Learning (машинне навчання); 
SLAM – Simultaneous Localization and Mapping (одночасна локалізація та побудова 
карти); 
FPS – Frames Per Second (кількість кадрів за секунду); 
RGB – Red, Green, Blue (модель кольорів); 
HSV – Hue, Saturation, Value (колірна модель); 
GPIO – General Purpose Input/Output (універсальні входи/виходи); 
GPU – Graphics Processing Unit (графічний процесор); 
ROS – Robot Operating System (операційна система для роботів); 
IoT – Internet of Things (Інтернет речей); 
LIDAR – Light Detection and Ranging (лазерне сканування відстані); 
IR – Infrared (інфрачервоний); 
YOLO – You Only Look Once (алгоритм детекції об’єктів); 
A* – алгоритм пошуку найкоротшого шляху; 
Dijkstra – алгоритм пошуку найкоротшого шляху; 
УМОВНІ ПОЗНАЧЕННЯ 
I(x,y)I(x, y)I(x,y) – інтенсивність пікселя з координатами (x, y); 
G(x,y)G(x, y)G(x,y) – градієнт зображення; 
T – порогове значення; 
d – відстань до об’єкта; 
v – швидкість руху робота; 
P – позиція робота; 
O – перешкода; 
M – карта середовища. 
 
  11 
 
ВСТУП 
Сучасний розвиток інформаційних технологій, робототехніки та штучного 
інтелекту сприяє активному впровадженню автономних систем у повсякденне 
життя людини. Особливу роль серед таких систем відіграють побутові 
роботизовані пристрої, зокрема роботи-прибиральники, які забезпечують 
автоматизацію процесу очищення приміщень та значно підвищують рівень 
комфорту користувачів. 
На сьогоднішній день більшість комерційних роботів-прибиральників 
використовують різні типи сенсорів, такі як інфрачервоні, ультразвукові та 
лазерні (LIDAR), що дозволяє їм орієнтуватися в просторі. Однак такі системи 
мають ряд обмежень, пов’язаних із недостатньою точністю розпізнавання 
об’єктів, складністю роботи в динамічному середовищі та високою вартістю 
обладнання. 
Використання технологій комп’ютерного зору відкриває нові можливості 
для підвищення ефективності роботизованих систем. Завдяки аналізу зображень 
та відеопотоку робот може не лише виявляти перешкоди, але й класифікувати їх, 
прогнозувати їх поведінку та адаптувати свою траєкторію руху. 
Актуальність теми. Актуальність теми полягає у необхідності створення 
інтелектуальних систем управління роботами, які здатні працювати у складних 
умовах та забезпечувати високу ефективність прибирання. 
Мета роботи і задачі дослідження. Метою роботи є розробка програмного 
забезпечення для управління роботом-прибиральником із використанням методів 
комп’ютерного зору. 
Для досягнення поставленої мети необхідно вирішити такі завдання: 
− провести аналіз існуючих роботизованих систем прибирання;  
− дослідити сучасні методи комп’ютерного зору;  
− спроєктувати архітектуру програмної системи;  
− реалізувати алгоритми обробки зображень та навігації;  
− провести тестування та оцінку ефективності системи.  
 
  12 
 
Об’єктом дослідження є автономні роботизовані системи.  
Предметом дослідження є програмні засоби управління роботом із 
використанням технологій комп’ютерного зору.  
Методи дослідження. У роботі використано методи комп’ютерного зору та 
цифрової обробки зображень, зокрема сегментацію, контурний аналіз та детекцію 
об’єктів, а також алгоритми навігації мобільних роботів і уникнення перешкод. 
Крім того, застосовано методи моделювання програмних систем, модульного 
проєктування та розробки програмного забезпечення з використанням сучасних 
інструментів. 
Апробація результатів роботи. Основні положення і результати 
кваліфікаційної роботи бакалавра доповідалися і були обговорені на конференції 
«День студентської науки кафедри КНСА», 22 квітня  2026 року, Черкаси, 
Україна. 
Практичне значення отриманих результатів полягає у можливості 
використання розробленого програмного забезпечення при створенні автономних 
роботизованих систем побутового призначення, а також у навчальному процесі 
спеціальності 122 «Комп’ютерні науки». 
 
  13 
 
1 АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ 
Розвиток сучасних інформаційних технологій, робототехніки та систем 
штучного інтелекту призвів до широкого впровадження автономних пристроїв у 
різні сфери діяльності людини. Особливе місце серед таких систем займають 
мобільні роботи побутового призначення, зокрема роботи-прибиральники, які 
виконують функції автоматизованого очищення приміщень без безпосереднього 
втручання користувача. 
На сьогоднішній день існує значна кількість технічних рішень у сфері 
роботизованого прибирання, які відрізняються за рівнем автономності, типами 
сенсорів, алгоритмами навігації та складністю програмного забезпечення. 
Більшість комерційних систем базується на використанні датчиків відстані, 
інерційних систем та лазерних сканерів (LIDAR), що дозволяє будувати карту 
приміщення та планувати маршрут руху. Однак, такі підходи мають ряд 
обмежень, пов’язаних із високою вартістю обладнання, обмеженою здатністю до 
розпізнавання об’єктів та складністю адаптації до змін середовища. 
У зв’язку з цим все більшого значення набуває використання технологій 
комп’ютерного зору, які дозволяють аналізувати візуальну інформацію та 
приймати рішення на основі обробки зображень. Застосування методів 
комп’ютерного зору дає змогу не лише виявляти перешкоди, але й класифікувати 
їх, оцінювати їх розташування у просторі та прогнозувати подальшу поведінку. 
Це відкриває нові можливості для підвищення ефективності автономної навігації 
роботів. 
Аналіз предметної області є важливим етапом розробки програмного 
забезпечення, оскільки дозволяє: 
− дослідити існуючі підходи та технології;  
− визначити їх переваги та недоліки;  
− сформулювати вимоги до розроблюваної системи;  
− обґрунтувати вибір методів і засобів реалізації.  
 
  14 
 
У рамках даного розділу буде проведено комплексний аналіз сучасних 
роботизованих систем прибирання, розглянуто основні методи навігації 
мобільних роботів, а також досліджено технології комп’ютерного зору, що 
застосовуються для вирішення задач орієнтації у просторі. Особлива увага 
приділяється аналізу алгоритмів обробки зображень та методів детекції об’єктів, 
які можуть бути використані для підвищення ефективності роботи робота-
прибиральника. 
Результати проведеного аналізу стануть основою для подальшого 
проєктування програмної системи, визначення її архітектури та вибору 
оптимальних алгоритмів функціонування, що буде детально розглянуто у 
наступних розділах роботи. 
1.1 Сучасні роботизовані системи прибирання 
Сучасні роботизовані системи прибирання є одним із найбільш поширених 
прикладів використання автономних мобільних роботів у побутовій сфері. 
Основним призначенням таких систем є автоматизоване очищення приміщень без 
постійного втручання користувача. У процесі розвитку роботів-прибиральників 
відбувся перехід від простих механічних пристроїв із випадковою траєкторією 
руху до інтелектуальних систем, здатних будувати карту приміщення, аналізувати 
навколишнє середовище та адаптувати власну поведінку відповідно до умов 
експлуатації. 
 
Рисунок 1.1 – Приклад роботи сучасного робота-прибиральника з побудовою 
карти приміщення 
 
  15 
 
Як видно з рисунку 1.1, сучасні роботи-прибиральники здатні створювати 
цифрову карту приміщення, що дозволяє їм оптимізувати маршрут руху та 
уникати повторного очищення одних і тих самих ділянок. Сучасні роботи-
прибиральники оснащуються складними навігаційними системами, що 
включають лазерні сканери, камери, інфрачервоні датчики та алгоритми штучного 
інтелекту. 
Сучасні роботи-прибиральники складаються з таких основних компонентів 
рисунок 1.2: 
− сенсорна система;  
− обчислювальний модуль;  
− система руху;  
− акумуляторна батарея;  
− програмне забезпечення управління.  
 
Рисунок 1.2 – Сенсори та основні компоненти 
 
У тексті далі будемо посилатися на рисунок 1.1 як приклад реалізації 
картографування середовища. 
 
  16 
 
1.2 Методи навігації роботів 
У даному підрозділі розглянуто основні методи навігації мобільних роботів, 
що використовуються у сучасних роботизованих системах прибирання. 
Проаналізовано реактивні підходи, картоорієнтовані методи на основі побудови 
карти середовища (SLAM), а також інтелектуальні алгоритми з використанням 
комп’ютерного зору та машинного навчання. 
 
Рисунок 1.3 – Основні підходи до навігації мобільних роботів 
Навігація є ключовою функціональною підсистемою мобільного робота, що 
визначає його здатність переміщуватися у просторі, досягати заданих цілей та 
уникати перешкод. Як показано на рисунку 1.3, сучасні методи навігації можна 
умовно поділити на три основні класи: реактивні, картоорієнтовані (на основі 
побудови карти) та інтелектуальні (гібридні). 
1.2.1 Реактивні методи навігації. Реактивна (або поведінкова) навігація 
базується на безпосередній реакції робота на дані сенсорів без побудови 
глобальної моделі середовища. Робот приймає рішення на основі поточних 
показників датчиків, таких як відстань до перешкод або наявність об’єктів у зоні 
видимості. 
Основні характеристики: 
− відсутність глобальної карти;  
− швидка реакція на зміни середовища;  
− низькі обчислювальні витрати.  
До основних алгоритмів реактивної навігації належать: 
 
  17 
 
− алгоритм уникнення перешкод;  
− метод потенційних полів;  
− алгоритми “руху вздовж стіни”.  
У методі потенційних полів середовище моделюється як поле сил: ціль 
притягує робота, а перешкоди відштовхують. Рух робота визначається 
результуючим вектором цих сил. 
Переваги: 
− простота реалізації;  
− швидкодія;  
− ефективність у простих середовищах.  
Недоліки: 
− можливість застрягання у локальних мінімумах;  
− відсутність оптимізації маршруту;  
− неефективність у складних приміщеннях.  
1.2.2 Картоорієнтована навігація (SLAM). Картоорієнтована навігація 
базується на побудові карти середовища та визначенні положення робота 
відносно цієї карти. Найбільш поширеним підходом (рис. 1.4) є алгоритм SLAM 
(Simultaneous Localization and Mapping). 
 
 
Рисунок 1.4 – Навігація з використанням SLAM 
 
  18 
 
Основні етапи SLAM: 
1. Збір даних із сенсорів.  
2. Побудова карти середовища.  
3. Оцінка положення робота. 
4. Оновлення карти.  
Карти можуть бути представлені у вигляді: 
− сіткових карт (occupancy grid);  
− топологічних карт;  
− метричних моделей середовища.  
Після побудови карти використовується планування маршруту. Найбільш 
поширені алгоритми: 
− A* (евристичний пошук);  
− алгоритм Дейкстри;  
− RRT (Rapidly-exploring Random Tree).  
Переваги: 
− оптимізація маршруту;  
− ефективне покриття площі;  
− можливість повторного використання карти.  
Недоліки: 
− висока обчислювальна складність;  
− залежність від якості сенсорів;  
− складність реалізації.  
1.2.3 Інтелектуальна навігація (AI-based). Стрімкий розвиток технологій 
штучного інтелекту та комп’ютерного зору суттєво вплинув на підходи до 
навігації мобільних роботів. На відміну від традиційних методів, що базуються на 
використанні лише сенсорних даних або побудові карти середовища, 
інтелектуальна навігація передбачає аналіз візуальної інформації та прийняття 
рішень на основі складних алгоритмів обробки даних і навчання. 
Інтелектуальні методи навігації дозволяють роботам не лише визначати 
наявність перешкод, але й розпізнавати типи об’єктів, оцінювати їх просторове 
 
  19 
 
розташування, а також адаптувати свою поведінку залежно від умов середовища. 
Використання нейронних мереж, алгоритмів глибинного навчання та моделей 
комп’ютерного зору забезпечує більш гнучке та ефективне управління рухом 
робота, особливо у динамічних і складних умовах. 
У даному підрозділі розглядаються основні принципи інтелектуальної 
навігації, сучасні алгоритми аналізу зображень, а також особливості їх 
застосування в роботизованих системах прибирання. 
Інтелектуальна навігація з використанням комп’ютерного зору 
представлена на рис. 1.5. 
 
 
 
  20 
 
 
 
Рисунок 1.5 – Інтелектуальна навігація з використанням комп’ютерного зору 
 
  21 
 
Інтелектуальна навігація поєднує методи комп’ютерного зору, машинного 
навчання та класичні алгоритми планування. Як видно з рисунку 1.5, робот 
аналізує візуальну інформацію та приймає рішення на основі розпізнаних 
об’єктів. 
Основні компоненти: 
− детекція об’єктів;  
− сегментація сцени;  
− оцінка глибини;  
− прогнозування руху об’єктів.  
Застосовуються такі методи: 
− нейронні мережі (CNN);  
− алгоритми детекції (YOLO, SSD);  
− глибинне навчання (Deep Learning).  
Переваги: 
− висока адаптивність;  
− розпізнавання складних об’єктів;  
− робота у динамічному середовищі.  
Недоліки: 
− потреба у великих обчислювальних ресурсах;  
− залежність від якості навчальних даних;  
− складність налаштування.  
1.2.4 Гібридні методи навігації. Сучасні системи найчастіше 
використовують гібридні підходи, які поєднують: 
− SLAM для побудови карти;  
− комп’ютерний зір для аналізу сцени;  
− реактивні алгоритми для швидкої реакції.  
Такий підхід дозволяє: 
− досягти балансу між точністю та швидкодією;  
− підвищити надійність системи;  
− забезпечити адаптацію до змін середовища.  
 
  22 
 
Аналіз методів навігації показав, що жоден із підходів не є універсальним. 
Реактивні методи є простими, але неефективними у складних умовах. 
Картоорієнтовані методи забезпечують точну навігацію, але потребують значних 
ресурсів. Найбільш перспективним є використання гібридних підходів із 
застосуванням комп’ютерного зору, що дозволяє поєднати переваги різних 
методів та забезпечити ефективну роботу автономного робота. 
Визначено їхні переваги, недоліки та області застосування. Особливу увагу 
приділено гібридним підходам, які поєднують декілька методів і забезпечують 
більш ефективну навігацію в складних умовах. Результати аналізу 
використовуються для обґрунтування вибору алгоритмів у подальших розділах 
роботи. 
Отримані результати аналізу будуть використані у подальших розділах 
роботи для вибору алгоритмів навігації та реалізації програмного забезпечення. 
1.3 Технології комп’ютерного зору 
У даному підрозділі розглянуто основні технології комп’ютерного зору, що 
застосовуються в роботизованих системах для аналізу візуальної інформації та 
підтримки навігації. Описано етапи обробки зображень, методи виявлення та 
розпізнавання об’єктів, а також підходи до сегментації та оцінки просторових 
характеристик сцени. Особливу увагу приділено використанню сучасних 
алгоритмів і програмних засобів, які забезпечують роботу систем у режимі 
реального часу. 
Застосування технологій комп’ютерного зору дозволяє значно підвищити 
рівень автономності мобільних роботів, забезпечуючи їм можливість ефективно 
орієнтуватися у складних та динамічних середовищах. Інтеграція методів обробки 
зображень із алгоритмами навігації сприяє підвищенню точності виявлення 
перешкод, оптимізації маршрутів руху та покращенню загальної продуктивності 
роботизованих систем. Приклади роботи алгоритмів комп’ютерного зору 
показано на рис. 1.6. 
 
  23 
 
 
 
 
Рисунок 1.6 – Приклади роботи алгоритмів комп’ютерного зору 
Як видно з рисунку 1.6, комп’ютерний зір дозволяє ідентифікувати об’єкти, 
визначати їх положення та аналізувати структуру сцени. 
Основні методи: 
− детекція об’єктів;  
− сегментація;  
− класифікація.  
Технології комп’ютерного зору (Computer Vision, CV) забезпечують 
автоматизований аналіз візуальної інформації з метою отримання структурованих 
даних про об’єкти та сцени. У контексті роботизованих систем прибирання ці 
технології використовуються для виявлення перешкод, розпізнавання типів 
об’єктів, оцінки їхнього розташування та підтримки процесів навігації. Як 
показано на рисунку 1.6, типовий конвеєр обробки включає етапи попередньої 
обробки, виділення ознак, інтерпретації сцени та прийняття рішень. 
1.3.1 Джерела даних та сенсори. Вхідні дані для систем комп’ютерного 
зору формуються за допомогою: 
 
  24 
 
− RGB-камер (звичайні відеокамери);  
− RGB-D камер (із каналом глибини);  
− стереокамер (оцінка глибини за паралаксом);  
− ToF/глибинних сенсорів.  
Для побутових роботів найпоширенішими є RGB або RGB-D камери 
завдяки їхній доступності та достатній інформативності. Комбінація з іншими 
сенсорами (IMU, енкодери) підвищує стабільність оцінок. 
1.3.2 Попередня обробка зображень. Попередня обробка спрямована на 
покращення якості даних та підготовку до подальшого аналізу: 
− перетворення кольорового простору (RGB → Gray, HSV);  
− фільтрація шумів (Gaussian Blur, Median);  
− нормалізація яскравості/контрасту (Histogram Equalization);  
− геометричні перетворення (масштабування, виправлення спотворень).  
Ці операції зменшують вплив шумів і змін освітлення, що критично для 
стабільної роботи в реальному середовищі. 
1.3.3 Виділення ознак та контурів. На цьому етапі формуються 
низькорівневі та середньорівневі ознаки: 
− детекція границь (алгоритм Canny);  
− пошук контурів і сегментація за кольором/текстурою;  
− ключові точки (SIFT, SURF, ORB) та дескриптори;  
− перетворення Гафа (виявлення ліній/кіл).  
Виділені ознаки використовуються для відстеження об’єктів, зіставлення 
кадрів та локалізації робота у просторі. 
1.3.4 Детекція та класифікація об’єктів. Розглянемо приклад детекції 
об’єктів із використанням глибокого навчання (рис. 1.7). 
Сучасні системи широко застосовують методи глибинного навчання для 
детекції: 
− одноетапні моделі (YOLO, SSD) – висока швидкість, робота в реальному 
часі;  
− двоетапні моделі (Faster R-CNN) — вища точність за рахунок швидкодії.  
 
  25 
 
 
 
 
Рисунок 1.7 – Приклад детекції об’єктів із використанням глибокого навчання 
 
  26 
 
Результатом є набір обмежувальних рамок (bounding boxes) із класами 
об’єктів і ймовірностями. Для задач навігації важливими є класи “стіна”, “меблі”, 
“людина”, “перешкода”. 
1.3.5 Сегментація та розуміння сцени. Сегментація сцени є одним із 
ключових етапів комп’ютерного зору, що дозволяє перейти від детекції окремих 
об’єктів до повноцінного розуміння структури зображення. На відміну від задачі 
детекції, де визначаються лише обмежувальні рамки об’єктів, сегментація 
забезпечує поділ зображення на однорідні області з точністю до пікселя. Як 
показано на рисунку 1.8, результатом сегментації є карта, де кожен піксель 
належить до певного класу (підлога, стіни, меблі, перешкоди тощо). 
Існує декілька основних типів сегментації: 
− семантична сегментація – кожному пікселю зображення 
присвоюється клас без розрізнення окремих екземплярів об’єктів;  
− інстанс-сегментація – дозволяє виділяти окремі об’єкти одного класу 
(наприклад, кілька стільців);  
− паноптична сегментація – поєднує підходи семантичної та інстанс-
сегментації.  
У задачах навігації мобільних роботів сегментація використовується для: 
− визначення прохідних зон (підлоги);  
− виявлення статичних і динамічних перешкод;  
− аналізу структури приміщення;  
− побудови карти середовища.  
Завдяки сегментації робот може формувати більш точне уявлення про 
навколишній простір, що значно підвищує якість планування маршруту. 
Наприклад, виділення області підлоги дозволяє визначити допустимі зони руху, а 
класифікація об’єктів допомагає враховувати їхню потенційну небезпеку або 
рухливість. 
Сучасні методи сегментації базуються переважно на використанні 
згорткових нейронних мереж (CNN). До найбільш поширених моделей належать: 
− U-Net;  
 
  27 
 
− SegNet;  
− DeepLab;  
− Mask R-CNN.  
Ці моделі дозволяють досягати високої точності сегментації навіть у 
складних умовах освітлення та за наявності великої кількості об’єктів. Водночас 
їх застосування потребує значних обчислювальних ресурсів, що є обмеженням 
для вбудованих систем. 
 
 
Рисунок 1.8 – Сегментація сцени та виділення прохідних зон 
 
  28 
 
У практичних системах часто застосовуються оптимізовані або спрощені 
моделі сегментації, які забезпечують баланс між точністю та швидкодією. Це 
особливо важливо для роботів-прибиральників, які повинні працювати в режимі 
реального часу. 
Таким чином, сегментація та розуміння сцени є важливими складовими 
сучасних систем комп’ютерного зору, що дозволяють забезпечити більш точну та 
ефективну навігацію мобільних роботів. Отримані результати сегментації 
використовуються у подальших етапах обробки для прийняття рішень та 
керування рухом робота. 
Сегментація поділяє зображення на семантичні області: 
− семантична (класи для кожного пікселя);  
− інстанс-сегментація (окремі об’єкти одного класу).  
Для роботів-прибиральників це дозволяє: 
− виділити прохідні зони (підлога);  
− відокремити перешкоди;  
− оцінити структуру приміщення.  
1.3.6 Оцінка глибини та 3D-сприйняття. Оцінка відстані до об’єктів може 
виконуватись: 
− за допомогою RGB-D/ToF сенсорів;  
− стереозору;  
− монокулярних моделей (нейромережеве відновлення глибини).  
Глибина дозволяє визначати безпечні траєкторії, пріоритезувати перешкоди 
та підвищувати точність навігації. 
1.3.7 Візуальна одометрія та Visual SLAM. Технології Visual SLAM 
поєднують комп’ютерний зір і навігацію: 
− відстеження ключових точок між кадрами;  
− оцінка переміщення (візуальна одометрія);  
− інкрементальна побудова карти.  
Це особливо актуально для систем без LiDAR або як доповнення до нього. 
 
  29 
 
1.3.8 Програмні засоби та інструменти. Для реалізації CV-алгоритмів 
застосовуються: 
− бібліотека OpenCV (фільтрація, контури, базові алгоритми);  
− фреймворки TensorFlow та PyTorch (нейронні мережі);  
− екосистема ROS (інтеграція сенсорів і модулів).  
Вибір інструментів залежить від вимог до швидкодії, доступних ресурсів та 
складності задачі. 
Технології комп’ютерного зору є ключовим компонентом сучасних 
автономних роботів, забезпечуючи розпізнавання об’єктів, аналіз сцени та 
підтримку навігації. Поєднання класичних методів обробки зображень із 
глибинним навчанням дозволяє досягти балансу між точністю та швидкодією. 
Отримані підходи будуть використані у подальших розділах для реалізації 
програмного забезпечення робота-прибиральника. 
У подальших розділах (див. розділ 3) ці методи будуть використані для 
реалізації системи управління. 
1.4 Аналіз існуючих рішень 
Аналіз сучасних роботизованих систем прибирання є важливим етапом 
дослідження, що дозволяє визначити рівень розвитку галузі, виявити ключові 
технологічні підходи та сформувати вимоги до розроблюваної системи. 
Як показано на рисунку 1.9, сучасні рішення представлені складними 
інтелектуальними пристроями, що поєднують сенсорні системи, алгоритми 
навігації та методи штучного інтелекту. 
Водночас сучасні роботизовані системи прибирання відрізняються високим 
рівнем інтеграції апаратних та програмних компонентів, що забезпечує їх 
здатність до автономного функціонування в умовах невизначеності. Значна увага 
приділяється використанню сенсорних систем, таких як камери, лідара та 
інфрачервоні датчики, що дозволяє отримувати детальну інформацію про 
навколишнє середовище. Поєднання цих технологій із алгоритмами машинного 
 
  30 
 
навчання сприяє підвищенню точності розпізнавання об’єктів, адаптації до змін 
умов та ефективному плануванню траєкторії руху. Це, у свою чергу, визначає 
основні напрямки розвитку сучасних роботизованих систем та слугує основою 
для вдосконалення програмного забезпечення управління роботом-
прибиральником. 
 
 
Рисунок 1.9 – Приклад сучасних роботизованих систем прибирання провідних 
виробників 
 
  31 
 
1.4.1 Аналіз провідних комерційних систем. Серед найбільш поширених 
роботів-прибиральників на ринку можна виділити рішення компаній iRobot, 
Roborock, Xiaomi, Ecovacs. 
iRobot Roomba 
Компанія iRobot є одним із піонерів у сфері побутової робототехніки. 
Сучасні моделі серії Roomba використовують: 
− Visual SLAM;  
− камери для навігації;  
− алгоритми адаптивного прибирання.  
Переваги: 
− висока надійність;  
− добре оптимізоване ПЗ;  
− ефективна робота у складних приміщеннях.  
Недоліки: 
− обмежене використання LiDAR;  
− висока вартість;  
− залежність від освітлення.  
Roborock (Xiaomi ecosystem) 
Роботи Roborock активно використовують LiDAR-навігацію та алгоритми 
побудови карт. 
Переваги: 
− висока точність позиціонування;  
− ефективне планування маршруту;  
− підтримка зонування.  
Недоліки: 
− висока вартість моделей з розширеним функціоналом;  
− обмежене розпізнавання дрібних об’єктів.  
Xiaomi Robot Vacuum 
Рішення Xiaomi поєднують доступну вартість із сучасними технологіями: 
− SLAM-навігація;  
 
  32 
 
− базові AI-функції;  
− мобільні застосунки.  
Переваги: 
− хороше співвідношення ціна/якість;  
− функціональність;  
− інтеграція з IoT.  
Недоліки: 
− середня точність розпізнавання об’єктів;  
− обмежені можливості AI.  
Ecovacs Deebot 
Сучасні моделі Ecovacs використовують гібридні підходи: 
− LiDAR + камера;  
− AI-розпізнавання об’єктів;  
− автоматичні станції очищення.  
Переваги: 
− висока автономність;  
− розширений функціонал;  
− ефективне уникнення перешкод.  
Недоліки: 
− складність системи;  
− висока вартість.  
1.4.2 Порівняльний аналіз систем. З метою узагальнення результатів 
аналізу сучасних роботизованих систем прибирання проведено їх порівняння за 
ключовими технічними та функціональними характеристиками. Основними 
критеріями оцінювання обрано тип навігації, використання сенсорів, рівень 
застосування алгоритмів штучного інтелекту, здатність працювати в різних 
умовах освітлення, а також вартість і загальну ефективність роботи системи. 
Порівняльний аналіз дозволяє наочно оцінити переваги та недоліки різних 
підходів до реалізації навігації та управління роботами-прибиральниками табл. 
1.1. Як видно з таблиці, найбільш ефективними є системи, що поєднують декілька 
 
  33 
 
технологій, зокрема LiDAR та комп’ютерний зір, що забезпечує високу точність 
позиціонування та адаптивність до змін середовища. Отримані результати є 
основою для обґрунтування вибору технологій у подальшій розробці програмного 
забезпечення. 
Таблиця 1.1 – Таблиця параметрів сучасних систем за виробниками 
Параметр iRobot Roomba Roborock Xiaomi Ecovacs 
Тип навігації Visual SLAM LiDAR SLAM SLAM Гібрид 
Камера Так Частково Так Так 
LiDAR Ні Так Так Так 
AI-розпізнавання Середнє Обмежене Середнє Високе 
Робота в темряві Низька Висока Висока Висока 
Вартість Висока Висока Середня Висока 
Ефективність Висока Висока Середня Висока 
 
1.4.3 Технологічні підходи. Аналіз існуючих систем показує використання 
трьох основних підходів: 
LiDAR-навігація — висока точність, незалежність від освітлення [1].  
Visual SLAM — дешевший, але залежний від камери [2].  
Гібридні системи — поєднання LiDAR і AI. 
1.4.4 Основні недоліки існуючих рішень. Незважаючи на значний розвиток 
технологій, сучасні системи мають ряд обмежень: 
− висока вартість високоточних моделей;  
− залежність камер від освітлення;  
− недостатня точність розпізнавання дрібних об’єктів;  
− обмежена продуктивність вбудованих систем;  
− складність обробки динамічних перешкод.  
1.4.5 Обґрунтування вибору підходу. На основі проведеного аналізу 
можна зробити такі висновки: 
− найбільш ефективними є гібридні системи;  
− комп’ютерний зір має високий потенціал;  
− існує потреба у доступних AI-рішеннях.  
 
  34 
 
У даній роботі доцільно використати підхід, що базується на застосуванні 
комп’ютерного зору з елементами інтелектуальної навігації, що дозволить 
забезпечити баланс між точністю, вартістю та продуктивністю. 
Висновки до розділу 1 
У результаті проведеного аналізу предметної області встановлено, що 
сучасні роботизовані системи прибирання є складними технічними комплексами, 
які поєднують апаратні компоненти, сенсорні системи та інтелектуальне 
програмне забезпечення. Визначено, що еволюція таких систем відбувалася від 
простих реактивних пристроїв із випадковою траєкторією руху до 
високотехнологічних автономних систем із використанням алгоритмів побудови 
карти середовища та штучного інтелекту. 
Проаналізовано основні підходи до навігації мобільних роботів, зокрема 
реактивні методи, картоорієнтовані алгоритми (SLAM) та інтелектуальні підходи 
на основі комп’ютерного зору. Встановлено, що реактивні методи 
характеризуються простотою реалізації, але мають низьку ефективність у 
складних середовищах. Картоорієнтовані методи забезпечують високу точність 
позиціонування та оптимізацію маршруту, однак потребують значних 
обчислювальних ресурсів і складного апаратного забезпечення. Інтелектуальні 
методи навігації, що базуються на використанні технологій комп’ютерного зору, 
дозволяють досягти більш гнучкої та адаптивної поведінки робота, особливо в 
умовах динамічного середовища. 
Досліджено сучасні технології комп’ютерного зору, включаючи методи 
попередньої обробки зображень, виділення ознак, детекції об’єктів та сегментації 
сцени. Встановлено, що застосування згорткових нейронних мереж і алгоритмів 
глибинного навчання забезпечує високу точність розпізнавання об’єктів і 
дозволяє формувати більш повне уявлення про навколишнє середовище. 
Особливу роль відіграє сегментація сцени, яка дає можливість визначати прохідні 
зони та перешкоди на рівні пікселів, що є критично важливим для задач навігації. 
 
  35 
 
Проведений аналіз існуючих комерційних рішень показав, що найбільш 
ефективними є системи, які використовують гібридні підходи, поєднуючи LiDAR, 
камери та алгоритми штучного інтелекту. Водночас виявлено низку проблем, 
характерних для сучасних систем, зокрема високу вартість високоточних 
моделей, залежність камерних систем від умов освітлення, обмежену 
продуктивність вбудованих обчислювальних платформ та складність обробки 
динамічних об’єктів. 
На основі проведеного аналізу сформульовано основні вимоги до 
розроблюваного програмного забезпечення, а саме: 
− забезпечення ефективної навігації в умовах складного середовища;  
− використання методів комп’ютерного зору для виявлення та 
класифікації об’єктів;  
− адаптивність до змін умов експлуатації;  
− робота в режимі реального часу;  
− оптимізація використання обчислювальних ресурсів.  
Отримані результати аналізу предметної області обґрунтовують доцільність 
використання технологій комп’ютерного зору та інтелектуальних алгоритмів 
навігації при розробці програмного забезпечення для робота-прибиральника. 
Вони слугують теоретичною та методологічною основою для подальшого 
проєктування архітектури системи та реалізації алгоритмів, що буде розглянуто у 
наступних розділах роботи. 
 
  36 
 
 2 ПРОЄКТУВАННЯ ПРОГРАМНОЇ СИСТЕМИ 
У даному розділі розглянуто процес проєктування програмного 
забезпечення для управління роботом-прибиральником із використанням 
технологій комп’ютерного зору. На основі результатів аналізу предметної області, 
наведеного у розділі 1, сформульовано вимоги до системи, визначено її 
функціональну структуру та обґрунтовано вибір архітектурного підходу. 
Проєктування програмної системи спрямоване на забезпечення ефективної 
роботи робота в умовах реального середовища, що передбачає обробку візуальної 
інформації, виявлення перешкод, прийняття рішень щодо руху та керування 
виконавчими механізмами. Особлива увага приділяється модульності системи, що 
дозволяє забезпечити її гнучкість, масштабованість та можливість подальшого 
розширення функціоналу. 
У розділі визначено основні компоненти програмної системи, описано їх 
взаємодію, а також представлено UML-моделі, що відображають логіку 
функціонування та структуру системи. Крім того, наведено формалізацію задачі 
навігації та описано алгоритми, які забезпечують автономну роботу робота. 
Результати проєктування є основою для подальшої реалізації програмного 
забезпечення, що буде розглянуто у наступному розділі. 
2.1 Загальна архітектура системи 
Загальна архітектура програмної системи визначає принципи організації, 
структуру та взаємодію основних компонентів, що забезпечують функціонування 
робота-прибиральника. Побудова архітектури є одним із ключових етапів 
проєктування, оскільки саме на цьому рівні закладаються основи ефективності, 
надійності та масштабованості системи. 
У контексті даної роботи архітектура повинна забезпечувати обробку 
візуальної інформації в реальному часі, прийняття рішень щодо навігації та 
керування виконавчими механізмами робота. Враховуючи складність задачі та 
 
  37 
 
обмежені ресурси апаратної платформи, доцільним є використання 
багаторівневого підходу з чітким розподілом функцій між компонентами системи. 
У подальшому підрозділі буде представлено загальну архітектуру 
програмного забезпечення, визначено її основні рівні, описано функціональні 
модулі та їх взаємодію, що забезпечує реалізацію автономної роботи робота-
прибиральника. 
 
 
Рисунок 2.1 – Узагальнена архітектура програмної системи робота-
прибиральника 
 
  38 
 
Загальна архітектура програмної системи визначає структуру, склад 
компонентів та принципи їх взаємодії з метою забезпечення автономної роботи 
робота-прибиральника. Як показано на рисунку 2.1, система побудована за 
багаторівневим підходом, що включає рівні сприйняття, прийняття рішень та 
керування. Такий підхід дозволяє розділити функціональність на логічно 
завершені модулі, спростити розробку та забезпечити масштабованість. 
2.1.1 Рівень сприйняття (Perception Layer). Рівень сприйняття відповідає 
за отримання та первинну обробку інформації з навколишнього середовища. 
Основним джерелом даних є відеопотік із камери. 
Основні функції: 
− захоплення кадрів у реальному часі;  
− попередня обробка зображення (фільтрація, нормалізація);  
− виділення ознак (контури, ключові точки);  
− детекція об’єктів;  
− сегментація сцени.  
На цьому рівні формується структурована інформація про середовище, яка 
передається до рівня прийняття рішень. Важливою вимогою є забезпечення 
достатньої швидкодії обробки (не менше 15–20 кадрів за секунду). 
2.1.2 Рівень прийняття рішень (Decision Layer). Рівень прийняття рішень 
є центральним компонентом системи, який відповідає за інтерпретацію 
отриманих даних та формування керуючих команд. 
Основні функції: 
− аналіз результатів обробки зображення;  
− оцінка наявності та розташування перешкод;  
− визначення прохідних зон;  
− вибір оптимального напрямку руху;  
− планування маршруту.  
На цьому рівні реалізуються алгоритми навігації, які можуть включати як 
реактивні методи, так і елементи планування маршруту. Прийняті рішення 
передаються до рівня керування. 
 
  39 
 
2.1.3 Рівень керування (Control Layer). Рівень керування забезпечує 
виконання команд, сформованих рівнем прийняття рішень, та безпосередньо 
взаємодіє з апаратними компонентами робота. 
Основні функції: 
− керування двигунами;  
− регулювання швидкості руху;  
− виконання поворотів;  
− зупинка робота.  
Команди, що формуються на цьому рівні: 
− рух вперед;  
− рух назад;  
− поворот ліворуч/праворуч;  
− зупинка.  
У реальних системах цей рівень взаємодіє з апаратними інтерфейсами 
(GPIO, драйвери моторів). 
2.1.4 Модульна структура системи. Модульна структура програмної 
системи є одним із ключових принципів її побудови, що передбачає розподіл 
функціональності на окремі незалежні компоненти. Такий підхід дозволяє 
зменшити складність розробки, підвищити гнучкість системи та забезпечити 
можливість її подальшого розширення без суттєвих змін у вже реалізованих 
частинах. 
У контексті розробки програмного забезпечення для управління роботом-
прибиральником модульний підхід є особливо доцільним, оскільки система 
повинна одночасно виконувати декілька складних задач, зокрема обробку 
зображень, аналіз навколишнього середовища, прийняття рішень та керування 
рухом. Розподіл цих функцій між окремими модулями дозволяє забезпечити 
ефективну взаємодію компонентів і спростити їх незалежну розробку та 
тестування. 
 
  40 
 
У подальшому підрозділі буде розглянуто основні модулі програмної 
системи, їх призначення, функціональні можливості та принципи взаємодії між 
ними. 
 
 
Рисунок 2.2 – Модульна структура програмної системи 
 
  41 
 
Як показано на рисунку 2.2, система реалізована у вигляді набору 
взаємопов’язаних модулів: 
− Camera Module — захоплення відеопотоку;  
− Vision Module — обробка зображення;  
− Navigation Module — прийняття рішень;  
− Control Module — керування рухом;  
− Communication Module — взаємодія з користувачем.  
Модульний підхід дозволяє: 
− спростити тестування системи;  
− забезпечити незалежну розробку компонентів;  
− легко замінювати або вдосконалювати окремі модулі.  
2.1.5 Інформаційні потоки. У системі реалізовано послідовну обробку 
даних: 
1. Захоплення кадру камерою.  
2. Передача зображення до модуля обробки.  
3. Виділення ознак та об’єктів. 
4. Формування рішення.  
5. Передача команди до модуля керування.  
Таким чином, система функціонує у циклічному режимі, що забезпечує 
безперервну роботу робота. 
2.1.6 Переваги обраної архітектури. Обрана архітектура має такі переваги: 
− чітке розділення функцій між модулями;  
− можливість масштабування;  
− адаптивність до різних апаратних платформ;  
− можливість інтеграції нових алгоритмів;  
− ефективна робота в режимі реального часу.  
Таким чином, загальна архітектура програмної системи забезпечує 
ефективну взаємодію між компонентами, що дозволяє реалізувати автономну 
навігацію робота-прибиральника. Поділ системи на рівні спрощує розробку та 
забезпечує можливість подальшого розширення функціоналу. Отримані 
 
  42 
 
результати використовуються для детального моделювання системи у наступних 
підрозділах. 
 
Рисунок 2.3 – Загальна архітектура програмного забезпечення робота-
прибиральника 
Як показано на рисунку 2.3, програмна система складається з трьох 
основних рівнів: 
− рівень сприйняття (Perception Layer);  
− рівень прийняття рішень (Decision Layer);  
− рівень керування (Control Layer).  
 
  43 
 
У подальшому тексті (див. підрозділи 2.2–2.4) буде детально розглянуто 
кожен із зазначених рівнів. 
Рівень сприйняття відповідає за отримання та обробку даних із камери. 
Рівень прийняття рішень аналізує отриману інформацію та формує команду руху. 
Рівень керування реалізує фізичне переміщення робота. 
2.2 Декомпозиція системи 
Декомпозиція системи є важливим етапом проєктування програмного 
забезпечення, що полягає у розподілі складної системи на окремі складові 
елементи з метою спрощення її розробки, аналізу та реалізації. Такий підхід 
дозволяє структурувати функціональність системи, визначити межі 
відповідальності окремих компонентів та встановити зв’язки між ними. 
У контексті розробки програмного забезпечення для управління роботом-
прибиральником декомпозиція системи дає можливість виділити ключові 
підсистеми, що відповідають за обробку візуальної інформації, аналіз 
середовища, прийняття рішень та керування рухом. Це дозволяє не лише 
зменшити складність реалізації, але й забезпечити модульність, масштабованість 
та зручність подальшого супроводу системи. 
Крім того, декомпозиція сприяє підвищенню якості програмного 
забезпечення за рахунок можливості незалежної розробки та тестування окремих 
компонентів. Вона також забезпечує гнучкість системи, що дозволяє адаптувати її 
до різних умов експлуатації та апаратних платформ, а також інтегрувати нові 
алгоритми та технології без необхідності повної перебудови системи. 
У даному підрозділі буде виконано декомпозицію програмної системи на 
основні функціональні компоненти, визначено їх призначення та описано 
взаємодію між ними, що є основою для подальшої реалізації програмного 
забезпечення. 
 
 
  44 
 
 
 
Рисунок 2.4 – Компонентна структура системи 
Відповідно до рисунка 2.4 система складається з таких основних 
компонентів: 
− Camera Module – модуль захоплення зображення;  
− Vision Processing Module – обробка зображення;  
 
  45 
 
− Navigation Module – планування руху;  
− Control Module – управління двигунами;  
− Communication Module – взаємодія з користувачем.  
Як видно з рисунка 2.2, модулі взаємодіють між собою через чітко 
визначені інтерфейси, що забезпечує модульність системи. 
2.3 UML-моделювання системи 
UML-моделювання є важливим етапом проєктування програмних систем, 
що дозволяє формалізувати їх структуру, поведінку та взаємодію компонентів у 
вигляді графічних моделей. Використання уніфікованої мови моделювання 
(Unified Modeling Language, UML) забезпечує наочне представлення системи, 
спрощує процес її аналізу та сприяє узгодженню рішень між розробниками. 
У процесі розробки програмного забезпечення для управління роботом-
прибиральником UML-моделі використовуються для опису основних сценаріїв 
взаємодії, логіки функціонування та структури системи. Це дозволяє ще на етапі 
проєктування виявити потенційні недоліки, уточнити вимоги та оптимізувати 
архітектуру програмного забезпечення. 
У даному підрозділі буде представлено основні UML-діаграми, зокрема 
діаграми варіантів використання, діяльності та компонентів, що відображають 
функціональні можливості системи, послідовність виконання процесів та 
взаємодію між її складовими частинами. 
2.3.1 Діаграма варіантів використання (Use Case). Діаграма варіантів 
використання (Use Case) використовується для відображення основних функцій 
системи та взаємодії між користувачем і роботом. Вона дозволяє визначити 
ключові сценарії роботи системи, зокрема запуск і зупинку прибирання, 
навігацію, уникнення перешкод та керування роботом. Така діаграма допомагає 
сформувати уявлення про функціональні можливості системи та її зовнішню 
поведінку. 
 
  46 
 
 
 
Рисунок 2.5 – UML-діаграма варіантів використання системи 
Як показано на рисунку 2.5, основними варіантами використання є: 
− запуск прибирання;  
− зупинка роботи;  
− уникнення перешкод;  
− побудова маршруту;  
− відображення карти.  
 
  47 
 
У подальшому (див. підрозділ 2.4) ці варіанти будуть деталізовані у вигляді 
алгоритмів. 
2.3.2 Діаграма діяльності (Activity Diagram). Діаграма діяльності (Activity 
Diagram) використовується для відображення послідовності виконання процесів у 
системі та логіки її функціонування. Вона демонструє основні етапи роботи 
робота-прибиральника — від отримання даних із сенсорів до прийняття рішень і 
виконання руху. Така діаграма дозволяє наочно представити алгоритм роботи 
системи та взаємозв’язок між окремими операціями. 
 
 
Рисунок 2.6 – Діаграма та схема діяльності системи 
 
  48 
 
Згідно з рисунком 2.6, процес роботи системи включає: отримання 
зображення; обробку даних; аналіз сцени; прийняття рішення; виконання руху.  
Як видно з рисунка 2.6, система працює у циклічному режимі реального 
часу. 
2.3.3 Діаграма компонентів. Діаграма компонентів використовується для 
відображення структури програмної системи та взаємодії між її основними 
модулями. Вона демонструє складові системи, їх функціональне призначення та 
інтерфейси обміну даними. Така діаграма дозволяє зрозуміти архітектуру 
програмного забезпечення та організацію взаємодії між компонентами. 
 
 
Рисунок 2.7 – UML-діаграма компонентів системи 
 
  49 
 
Як показано на рисунку 2.7, кожен модуль має чітко визначену 
відповідальність, що дозволяє: 
− спростити розробку;  
− забезпечити масштабованість;  
− полегшити тестування.  
2.4 Формалізація задачі навігації 
Задача навігації робота може бути представлена у вигляді графа: 
− вершини – позиції робота;  
− ребра – можливі переміщення;  
− вага – відстань або складність маршруту.  
Ціль: знайти маршрут від початкової точки до цільової рисунок 2.8. 
 
 
Рисунок 2.8 – Представлення середовища та планування траєкторії руху 
робота 
 
  50 
 
Формалізація задачі навігації передбачає математичний опис середовища, 
стану робота, обмежень та критеріїв оптимальності з метою подальшого 
застосування алгоритмів планування та керування. У даній роботі задача 
розглядається як поєднання глобального планування шляху та локального 
уникнення перешкод у частково відомому, динамічному середовищі. 
2.4.1 Інтеграція комп’ютерного зору. Результати модуля зору 
перетворюються у навігаційні дані: 
− сегментація → бінарна/семантична карта MMM;  
− детекція → перешкоди (bounding boxes) з проєкцією у площину руху;  
− оцінка глибини → відстані до об’єктів.  
Калібрування камери забезпечує перехід від координат пікселів до 
метричних координат. 
Задача навігації формалізована як комбінована задача графового пошуку та 
динамічного керування з урахуванням невизначеності. Поєднання глобального 
планування (A*/Dijkstra) і локальних методів (реактивні правила, DWA) 
забезпечує ефективний рух у реальному часі. Інтеграція результатів 
комп’ютерного зору дозволяє будувати актуальну карту середовища та підвищує 
адаптивність системи до змінних умов. 
2.5 Алгоритм роботи системи 
Алгоритм роботи програмної системи описує послідовність дій, що 
забезпечують автономне функціонування робота-прибиральника. Основою є 
циклічний процес обробки даних, у якому система постійно отримує інформацію 
з сенсорів, аналізує її та приймає рішення щодо подальшого руху. 
На першому етапі виконується захоплення відеопотоку з камери та його 
попередня обробка. Далі здійснюється аналіз зображення, зокрема виявлення 
перешкод і визначення прохідних зон за допомогою методів комп’ютерного зору. 
Отримані дані передаються до модуля навігації, де формується рішення щодо 
напрямку руху або зміни траєкторії. 
 
  51 
 
На завершальному етапі сформовані команди передаються до модуля 
керування, який здійснює управління виконавчими механізмами робота. Після 
виконання дії цикл повторюється, що забезпечує безперервну роботу системи в 
режимі реального часу. 
Таким чином, алгоритм роботи системи базується на інтеграції обробки 
візуальних даних, прийняття рішень та керування рухом, що дозволяє забезпечити 
ефективну навігацію робота-прибиральника. 
 
 
Рисунок 2.9 – Загальний алгоритм роботи системи 
 
  52 
 
Як показано на рисунку 2.9, алгоритм роботи включає: 
− Захоплення кадру; 
− Попередню обробку;  
− Детекцію об’єктів;  
− Оцінку ситуації;  
− Вибір напрямку;  
− Виконання руху. 
У подальшому (див. розділ 3) цей алгоритм буде реалізований програмно. 
2.6 Вибір технологій реалізації 
Для розробки системи обрано такі технології: 
− мова програмування: Python;  
− бібліотека комп’ютерного зору: OpenCV;  
− фреймворк машинного навчання: TensorFlow або PyTorch;  
− апаратна платформа: Raspberry Pi;  
− операційна система: Linux.  
Вибір обумовлений: 
− відкритістю технологій;  
− широкою підтримкою;  
− наявністю документації.  
Висновки до розділу 2 
У даному розділі було розроблено архітектуру програмної системи, 
визначено її основні компоненти та алгоритми роботи. Як показано на рисунках 
2.1–2.6, система має модульну структуру та забезпечує ефективну обробку даних 
у реальному часі. 
У процесі проєктування сформульовано функціональні та нефункціональні 
вимоги до програмного забезпечення, що дозволило визначити ключові 
 
  53 
 
характеристики системи, зокрема продуктивність, адаптивність та 
масштабованість. Розроблена архітектура базується на багаторівневому підході, 
який передбачає розподіл функцій між рівнями сприйняття, прийняття рішень та 
керування, що забезпечує чітку організацію процесів обробки інформації. 
Виконано декомпозицію системи на окремі функціональні модулі, що 
дозволяє спростити процес розробки, тестування та подальшого вдосконалення 
програмного забезпечення. Застосування UML-моделювання забезпечило 
формалізоване представлення структури системи та її поведінки, що сприяє 
кращому розумінню логіки її функціонування. 
Окрему увагу приділено формалізації задачі навігації, яка представлена у 
вигляді математичної моделі, що враховує простір станів, обмеження руху та 
критерії оптимальності. Це дозволяє застосовувати ефективні алгоритми 
планування траєкторії та уникнення перешкод у динамічному середовищі. 
Розроблений алгоритм роботи системи забезпечує інтеграцію процесів 
обробки зображень, аналізу середовища та керування рухом робота, що дозволяє 
досягти автономності та стабільності функціонування в реальному часі. 
Отримані результати є основою для подальшої реалізації програмного 
забезпечення, що буде розглянуто у наступному розділі роботи, а також 
створюють передумови для вдосконалення системи шляхом впровадження більш 
складних алгоритмів комп’ютерного зору та навігації. 
 
 
 
  54 
 
3 РОЗРОБКА ТА РЕАЛІЗАЦІЯ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ 
У даному розділі розглянуто процес розробки та реалізації програмного 
забезпечення для управління роботом-прибиральником із використанням 
технологій комп’ютерного зору. На основі результатів проєктування, наведених у 
попередньому розділі, виконано практичну реалізацію архітектури системи, 
визначено програмні засоби та інструменти розробки, а також описано основні 
етапи створення програмного продукту. 
Розробка програмного забезпечення передбачає реалізацію функціональних 
модулів, зокрема захоплення та обробки відеопотоку, виявлення та класифікації 
об’єктів, формування рішень щодо навігації та керування рухом робота. Особлива 
увага приділяється забезпеченню роботи системи в режимі реального часу, 
оптимізації алгоритмів обробки даних та ефективному використанню 
обчислювальних ресурсів. 
У межах розділу наведено опис програмної реалізації основних компонентів 
системи, структури програмного коду, а також приклади використання бібліотек 
комп’ютерного зору та інструментів розробки. Крім того, розглянуто особливості 
інтеграції програмного забезпечення з апаратною частиною робота та реалізацію 
механізмів взаємодії між модулями системи. 
Результати розробки демонструють можливість практичної реалізації 
запропонованої архітектури та алгоритмів, що забезпечують ефективну 
автономну роботу робота-прибиральника. 
3.1 Загальна структура програмної реалізації 
Загальна структура програмної реалізації визначає організацію програмного 
коду, взаємозв’язок між окремими модулями та принципи їх функціонування 
відповідно до розробленої архітектури системи. У межах даної роботи програмне 
забезпечення реалізовано з використанням модульного підходу, що передбачає 
 
55 
поділ системи на логічно незалежні компоненти, кожен із яких виконує окрему 
функцію. 
Програмна реалізація включає модулі захоплення відеоданих, обробки 
зображення, аналізу середовища, прийняття рішень та керування рухом робота. 
Взаємодія між модулями здійснюється через передачу структурованих даних, що 
забезпечує узгодженість роботи всієї системи. Такий підхід дозволяє спростити 
процес розробки, тестування та подальшого вдосконалення програмного 
забезпечення, а також забезпечити його адаптацію до різних апаратних платформ. 
Рисунок 3.1 – Структура програмної реалізації системи 
Як показано на рисунку 3.1, програмна реалізація системи базується на 
модульному підході та включає такі основні компоненти: 
− інтерфейс користувача; 
− модуль захоплення відеоданих;  
− модуль обробки зображення;  
− модуль аналізу середовища;  
− модуль прийняття рішень (навігації); 
  56 
 
− модуль керування рухом робота;  
− модуль комунікації та обміну даними;  
− апаратна частина робота (камера, датчики відстані, двигуни, 
акумулятор, виконавчі механізми). 
Взаємодія між модулями реалізована через передачу структурованих даних 
у вигляді кадрів та координат об’єктів. 
3.2 Реалізація модуля захоплення відео 
Модуль захоплення відео забезпечує отримання зображення з камери в 
режимі реального часу. 
Основні функції: 
− ініціалізація камери;  
− отримання кадру;  
− передача даних у модуль обробки.  
Приклад реалізації: 
import cv2 
class CameraModule: 
    def __init__(self, source=0): 
        self.cap = cv2.VideoCapture(source) 
    def get_frame(self): 
        ret, frame = self.cap.read() 
        if not ret: 
            return None 
        return frame 
    def release(self): 
        self.cap.release() 
Як видно з наведеного коду, модуль є простим та забезпечує базову 
функціональність для роботи системи. 
 
 
  57 
 
3.3 Реалізація модуля обробки зображення 
Модуль обробки зображення є одним із ключових компонентів програмної 
системи, оскільки саме він відповідає за отримання та аналіз візуальної 
інформації з камери робота. Основною метою даного модуля є виявлення 
перешкод, класифікація об’єктів та формування даних, необхідних для навігації 
робота у просторі. 
Реалізація модуля виконана з використанням мови програмування Python та 
бібліотеки OpenCV, що забезпечує широкий набір інструментів для обробки 
зображень у режимі реального часу. Обробка відеопотоку здійснюється 
послідовно за етапами, наведеними на рисунку 3.2, що дозволяє ефективно 
виділяти значущі об’єкти та зменшувати вплив шумів і зовнішніх факторів. 
У процесі реалізації модуля виконуються такі основні етапи: 
− Захоплення зображення – отримання кадру з камери робота у режимі 
реального часу.  
− Попередня обробка – перетворення зображення у відтінки сірого, 
фільтрація шумів за допомогою гаусового розмиття та нормалізація 
інтенсивності.  
− Сегментація зображення – виділення областей інтересу шляхом 
порогової обробки або адаптивного порогування, що дозволяє відокремити 
об’єкти від фону.  
− Виявлення об’єктів – застосування методів контурного аналізу та 
пошуку компонент зв’язності для визначення положення об’єктів у кадрі.  
− Класифікація об’єктів – визначення типу об’єктів (перешкода, стіна, 
меблі тощо) на основі геометричних характеристик або моделей машинного 
навчання.  
− Формування карти середовища – побудова сіткової (grid) карти на 
основі виявлених перешкод для подальшого використання у навігації.  
− Передача даних до модуля навігації – формування структурованої 
інформації для прийняття рішень щодо руху робота.  
 
  58 
 
У результаті роботи модуля формується набір параметрів, що описують 
навколишнє середовище, зокрема координати об’єктів, їх типи та області 
прохідності. Це дозволяє забезпечити ефективну роботу алгоритмів навігації та 
уникнення перешкод. 
Розроблений модуль забезпечує стабільну роботу в режимі реального часу з 
частотою обробки до 15–20 кадрів за секунду, що є достатнім для автономної 
навігації робота у динамічному середовищі. Завдяки модульній структурі 
програмного забезпечення, реалізація легко адаптується до змін умов експлуатації 
та дозволяє інтегрувати більш складні алгоритми обробки зображень у 
подальшому. 
 
Рисунок 3.2 – Етапи обробки зображення 
Як показано на рисунку 3.2, обробка зображення включає декілька 
послідовних етапів. 
Етапи обробки: 
− Перетворення у відтінки сірого.  
 
  59 
 
− Фільтрація шуму.  
− Виявлення контурів.  
− Аналіз об’єктів. 
Приклад коду: 
import cv2   
class VisionModule: 
    def process(self, frame): 
        gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) 
        blur = cv2.GaussianBlur(gray, (5, 5), 0) 
        edges = cv2.Canny(blur, 50, 150) 
        contours, _ = cv2.findContours( 
            edges, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE 
        ) 
        return contours, edges 
У подальшому (див. підрозділ 3.4) ці дані використовуються для прийняття 
рішень. 
3.4 Реалізація алгоритму уникнення перешкод 
Модуль уникнення перешкод забезпечує безпечний рух робота в реальному 
середовищі шляхом оперативного реагування на статичні та динамічні об’єкти. 
Алгоритм інтегрує дані модуля обробки зображення (маски прохідності, контури, 
bounding boxes, оцінку глибини) та формує керуючі команди з урахуванням 
кінематичних обмежень платформи. 
3.4.1 Загальна логіка роботи. Алгоритм працює у циклі реального часу та 
включає такі етапи: 
1. Отримання поточного кадру та результатів обробки (перешкоди, 
прохідні зони);  
2. Побудова локальної карти (occupancy mask / grid) у системі координат 
робота;  
 
  60 
 
3. Оцінка небезпеки (відстань до перешкод, їх розташування відносно 
центру);  
4. Вибір дії (напрямок/швидкість руху);  
5. Передача команд до модуля керування.  
3.4.2 Представлення перешкод. Перешкоди формуються на основі: 
− сегментації підлоги (визначення прохідних зон);  
− детекції об’єктів (bounding boxes);  
− оцінки глибини (за RGB-D або монокулярною моделлю).  
Для локального планування використовується бінарна карта: 
Застосовується інфляція перешкод на радіус робота для забезпечення 
безпечної дистанції. 
3.4.3 Локальний планувальник (реактивні правила). Базовий варіант 
реалізації використовує реактивні правила, що швидко обчислюються: 
− перешкода попереду → STOP / BACK;  
− перешкода зліва → повернути праворуч;  
− перешкода справа → повернути ліворуч;  
− відсутність перешкод → рух вперед.  
Рішення приймається на основі розбиття кадру на сектори 
(лівий/центральний/правий) та порівняння щільності перешкод у кожному 
секторі. 
3.4.4 Метод потенційних полів. Для більш плавного руху застосовано 
метод потенційних полів, де: 
− ціль формує привабливу силу Fatt;  
− перешкоди — відштовхувальну силу Frep.  
Напрямок руху визначається вектором F, а модуль — швидкістю v. Для 
уникнення локальних мінімумів використовується стохастичне відхилення або 
перемикання на реактивні правила. 
3.4.5 Динамічний підхід (DWA). З урахуванням динаміки робота 
реалізовано спрощений Dynamic Window Approach: 
 
  61 
 
− формується множина допустимих швидкостей (v,ω) з урахуванням 
обмежень;  
− для кожної пари оцінюється функція якості (близькість до цілі, 
відстань до перешкод, швидкість);  
− обирається оптимальна пара (v∗,ω∗).  
Це дозволяє забезпечити стійкість руху та уникнення зіткнень навіть у 
динамічному середовищі. 
3.4.6 Псевдокод алгоритму 
while active: 
    frame = camera.get_frame() 
    mask, objects = vision.process(frame) 
 
    grid = build_grid(mask, objects) 
    danger = evaluate_risk(grid) 
    if danger.front: 
        cmd = STOP if danger.close else BACK 
    elif danger.left: 
        cmd = TURN_RIGHT 
    elif danger.right: 
        cmd = TURN_LEFT 
    else: 
        cmd = FORWARD 
    control.execute(cmd) 
Розширена версія з потенційними полями / DWA замінює блок вибору cmd 
на оптимізацію вектора швидкості. 
3.4.7 Оптимізація та робота в реальному часі. Для забезпечення 15–20 
FPS застосовано: 
− обробку зображень у зниженій роздільній здатності;  
− використання ROI (нижня частина кадру);  
− попередню фільтрацію шумів;  
 
  62 
 
− асинхронну обробку (окремі потоки для камери/аналізу/керування).  
3.4.8 Обробка динамічних перешкод. Для рухомих об’єктів (люди, 
тварини) використовується: 
− повторна детекція на кожному кадрі;  
− короткострокове прогнозування (екстраполяція положення);  
− пріоритезація безпеки (зменшення швидкості, зупинка).  
Реалізований алгоритм уникнення перешкод поєднує реактивні правила з 
методами потенційних полів та елементами динамічного планування, що 
забезпечує надійну та плавну навігацію в реальному часі. Інтеграція з модулем 
комп’ютерного зору дозволяє оперативно виявляти перешкоди та адаптувати 
траєкторію руху робота до змін середовища. 
 
Рисунок 3.3 – Визначення перешкод на основі обробки зображення 
Як видно з рисунку 3.3, система визначає положення об’єкта відносно 
центру кадру та приймає рішення про зміну напрямку руху. 
Логіка алгоритму: 
− якщо об’єкт знаходиться в центрі → рух назад;  
− якщо ліворуч → поворот праворуч;  
 
  63 
 
− якщо праворуч → поворот ліворуч.  
Приклад реалізації: 
class NavigationModule: 
    def decide(self, contours, frame_width): 
        for cnt in contours: 
            x, y, w, h = cv2.boundingRect(cnt) 
            center = x + w // 2 
            if center < frame_width // 3: 
                return "RIGHT" 
            elif center > 2 * frame_width // 3: 
                return "LEFT" 
            else: 
                return "BACK" 
        return "FORWARD" 
3.5 Реалізація модуля керування рухом 
Модуль керування відповідає за передачу команд на двигуни робота. 
Основні команди: 
− FORWARD.  
− BACK.  
− LEFT.  
− RIGHT.  
− STOP. 
Приклад: 
class ControlModule: 
    def execute(self, command): 
        print(f"Execute: {command}") 
У реальній системі замість виводу використовуються GPIO або драйвери 
моторів. 
 
  64 
 
3.6 Інтеграція модулів системи 
 
Рисунок 3.4 – Інтеграція модулів системи 
 
Як показано на рисунку 3.4, система працює у безперервному циклі. 
Основний цикл: 
camera = CameraModule() 
vision = VisionModule() 
nav = NavigationModule() 
control = ControlModule() 
while True: 
    frame = camera.get_frame() 
    if frame is None: 
        break 
    contours, edges = vision.process(frame) 
    command = nav.decide(contours, frame.shape[1]) 
    control.execute(command) 
 
  65 
 
3.7 Реалізація інтерфейсу користувача 
 
Рисунок 3.7 – Інтерфейс користувача системи керування роботом 
Інтерфейс користувача є важливим компонентом програмної системи, що 
забезпечує взаємодію оператора з роботом-прибиральником. Його основне 
призначення полягає у відображенні стану системи, наданні можливості 
керування роботом та моніторингу процесу прибирання в режимі реального часу. 
У межах даної роботи інтерфейс реалізовано з урахуванням принципів 
зручності використання, наочності та швидкого доступу до основних функцій. 
Інтерфейс може бути представлений у вигляді десктопного застосунку або веб-
інтерфейсу, що дозволяє забезпечити універсальність та доступність системи. 
Основні функціональні можливості інтерфейсу. 
Інтерфейс користувача реалізує такі функції: 
− відображення відеопотоку з камери робота;  
− візуалізація карти середовища;  
 
  66 
 
− відображення перешкод та траєкторії руху;  
− індикація стану системи (швидкість, режим роботи, заряд батареї);  
− ручне керування роботом;  
− запуск та зупинка алгоритму автономної навігації.  
Структура інтерфейсу 
Інтерфейс користувача складається з таких основних елементів: 
1. Панель відеоспостереження – відображає зображення з камери 
робота в реальному часі.  
2. Карта середовища – показує розташування робота, перешкод і 
маршрут руху.  
3. Панель керування – містить кнопки для ручного керування (вперед, 
назад, повороти, стоп).  
4. Інформаційна панель – відображає поточні параметри системи (стан, 
швидкість, рівень заряду).  
5. Панель налаштувань – дозволяє змінювати параметри роботи 
алгоритмів.  
Технології реалізації 
Для створення інтерфейсу можуть використовуватись: 
− Python + Tkinter / PyQt – для десктопних застосунків;  
− HTML, CSS, JavaScript – для веб-інтерфейсу;  
− WebSocket / REST API – для обміну даними з роботом;  
− бібліотеки візуалізації (Canvas, Chart.js тощо).  
Принцип роботи 
Інтерфейс отримує дані від програмної системи через модуль комунікації. 
Відеопотік, координати робота, інформація про перешкоди та стан системи 
передаються у вигляді структурованих повідомлень і відображаються у 
відповідних елементах інтерфейсу. Команди користувача передаються у 
зворотному напрямку до модуля керування. 
 
 
  67 
 
Висновки до розділу 3 
Реалізований інтерфейс користувача забезпечує зручну та ефективну 
взаємодію з роботом-прибиральником, дозволяє контролювати його роботу та 
отримувати актуальну інформацію про стан системи. Використання сучасних 
технологій розробки забезпечує гнучкість, масштабованість та можливість 
подальшого вдосконалення інтерфейсу. 
У даному розділі було реалізовано програмне забезпечення для управління 
роботом-прибиральником. Як показано на рисунках 3.1–3.4, система включає 
модулі обробки зображення, навігації та керування, що взаємодіють у режимі 
реального часу. 
Реалізовані алгоритми дозволяють ефективно виявляти перешкоди та 
приймати рішення щодо руху робота. 
 
  68 
 
4 ТЕСТУВАННЯ ТА ОЦІНКА ЕФЕКТИВНОСТІ СИСТЕМИ 
У даному розділі розглянуто процес тестування розробленого програмного 
забезпечення для управління роботом-прибиральником та проведено оцінку його 
ефективності. Основною метою тестування є перевірка працездатності системи, 
виявлення можливих помилок та оцінка якості функціонування алгоритмів у 
реальних умовах експлуатації. 
Тестування системи здійснюється на різних рівнях, включаючи перевірку 
окремих модулів, інтеграційне тестування та тестування всієї системи в цілому. 
Особлива увага приділяється перевірці роботи модуля обробки зображення, 
алгоритмів навігації та уникнення перешкод, а також коректності взаємодії між 
компонентами системи. 
У межах розділу визначено основні критерії оцінки ефективності системи, 
зокрема точність виявлення перешкод, швидкодію обробки даних, стабільність 
роботи та здатність адаптуватися до змін умов середовища. Для цього 
проводяться експериментальні дослідження з використанням різних сценаріїв, що 
моделюють реальні умови роботи робота. 
Результати тестування дозволяють оцінити рівень досягнення поставлених 
цілей, визначити сильні та слабкі сторони розробленого програмного 
забезпечення та сформулювати рекомендації щодо його подальшого 
вдосконалення. Отримані дані підтверджують можливість ефективного 
використання системи для автономної навігації робота-прибиральника в 
динамічному середовищі. 
4.1 Мета та завдання тестування 
Метою тестування є комплексна оцінка ефективності розробленого 
програмного забезпечення для управління роботом-прибиральником у реальних 
та наближених до реальних умовах експлуатації. Тестування спрямоване на 
перевірку працездатності системи, визначення рівня якості реалізованих 
 
  69 
 
алгоритмів та підтвердження відповідності отриманих результатів поставленим 
вимогам. 
У процесі тестування здійснюється аналіз функціонування ключових 
компонентів системи, зокрема модуля обробки зображення, алгоритмів навігації 
та уникнення перешкод, а також оцінюється взаємодія між окремими модулями. 
Особлива увага приділяється роботі системи в умовах динамічного середовища, 
де можливі зміни освітлення, поява рухомих об’єктів та інші фактори, що 
впливають на якість навігації. 
Основними завданнями тестування є: 
− перевірка точності виявлення перешкод – оцінка здатності системи 
коректно ідентифікувати об’єкти в кадрі, визначати їх межі та розташування 
відносно робота;  
− оцінка швидкодії системи – визначення часу обробки одного кадру, 
частоти обробки відеопотоку (FPS) та затримки між отриманням даних і 
формуванням керуючої команди;  
− аналіз якості навігації – дослідження ефективності вибору траєкторії 
руху, здатності системи уникати перешкод та досягати поставленої цілі без 
зіткнень;  
− визначення стабільності роботи – перевірка безперервності 
функціонування системи протягом тривалого часу, стійкості до змін умов 
середовища та обробки можливих помилок.  
Для досягнення поставленої мети використовуються різні сценарії 
тестування, що включають як статичні, так і динамічні умови роботи. Це дозволяє 
отримати об’єктивну оцінку ефективності системи та визначити напрямки її 
подальшого вдосконалення. 
4.2 Умови проведення експерименту 
Умови проведення експерименту визначають параметри зовнішнього 
середовища, у якому здійснюється тестування розробленої системи, а також 
 
  70 
 
забезпечують відтворюваність та об’єктивність отриманих результатів. 
Експеримент проводився на відкритій території міського парку, що максимально 
наближена до реальних умов експлуатації робота-прибиральника. 
Тестування здійснювалося на пішохідних доріжках з твердим покриттям 
(тротуарна плитка, асфальт) із наявністю типових перешкод, таких як лавки, урни, 
клумби, дерева та інші елементи інфраструктури. Додатково враховувалися змінні 
фактори зовнішнього середовища, зокрема природне освітлення, тіні від дерев, 
погодні умови та присутність динамічних об’єктів (пішоходів), що дозволило 
провести комплексну оцінку ефективності роботи системи в реальних умовах. 
 
Рисунок 4.1 – Експериментальне середовище для тестування роботи робота-
прибиральника в парку 
Характеристика експериментального середовища 
Експериментальне середовище було організоване на відкритій території 
парку з метою перевірки працездатності розробленої системи в реальних умовах 
експлуатації. Вибір саме такого середовища зумовлений необхідністю оцінки 
 
  71 
 
ефективності роботи алгоритмів комп’ютерного зору та навігації в умовах 
наявності природних об’єктів, змінного освітлення та динамічних перешкод. 
Тестова зона являє собою пішохідну ділянку з твердим покриттям 
(тротуарна плитка або асфальт), оточену зеленими насадженнями. У межах 
середовища присутні типові елементи міської інфраструктури, такі як лавки, 
урни, ліхтарі, клумби, дерева, а також інші об’єкти, що виступають перешкодами 
для руху робота. Додатково в зоні тестування можуть розміщуватись випадкові 
предмети, зокрема пластикові пляшки, папір та інше сміття, що імітує реальні 
умови прибирання. 
Освітлення експериментального середовища є змінним і залежить від часу 
доби та погодних умов. Тестування проводиться переважно у денний час при 
природному освітленні, однак додатково враховуються варіації освітленості через 
тінь від дерев, хмарність або часткове затемнення. Це дозволяє оцінити стійкість 
алгоритмів обробки зображення до змін яскравості та контрасту сцени. 
Важливою складовою середовища є наявність динамічних об’єктів, таких як 
пішоходи або тварини, які можуть з’являтися у зоні роботи робота. Це створює 
додаткові умови для перевірки алгоритмів уникнення перешкод та адаптації до 
змін у навколишньому середовищі. 
Для оцінки навігаційних можливостей робота тестова зона включає як 
відкриті ділянки, так і обмежені простори (вузькі проходи між лавками або 
клумбами). Це дозволяє перевірити здатність системи планувати маршрут, 
обходити перешкоди та ефективно рухатися до заданої цілі. 
Таким чином, експериментальне середовище максимально наближене до 
реальних умов експлуатації робота-прибиральника, що забезпечує об’єктивну 
оцінку ефективності розробленої системи та дозволяє виявити її сильні й слабкі 
сторони. 
Апаратна конфігурація 
Для проведення експерименту використовувалась така апаратна платформа: 
− одноплатний комп’ютер (наприклад, Raspberry Pi);  
− камера (RGB або RGB-D);  
 
  72 
 
− двигуни постійного струму;  
− датчики відстані (ультразвукові або LiDAR);  
− акумуляторна батарея.  
Обчислювальні ресурси були обмеженими, що дозволило оцінити 
ефективність алгоритмів у реальних умовах експлуатації. 
Програмне забезпечення 
Програмна частина системи включала: 
− мову програмування Python;  
− бібліотеку OpenCV для обробки зображень;  
− реалізовані алгоритми сегментації, детекції об’єктів та навігації;  
− модуль керування рухом робота.  
Система працювала у режимі реального часу з обробкою відеопотоку. 
Сценарії тестування 
Для комплексної оцінки системи було сформовано декілька сценаріїв: 
Статичне середовище – робот рухається серед нерухомих перешкод.  
Динамічне середовище – у полі зору з’являються рухомі об’єкти.  
Обмежений простір – перевірка руху у вузьких проходах.  
Змінні умови освітлення – тестування при різній інтенсивності світла.  
Параметри вимірювання 
У процесі експерименту фіксувались такі показники: 
− точність виявлення перешкод (%);  
− частота обробки кадрів (FPS);  
− час реакції системи;  
− кількість зіткнень;  
− довжина траєкторії руху.  
Визначені умови проведення експерименту дозволяють отримати 
об’єктивну оцінку ефективності розробленої системи. Використання різних 
сценаріїв тестування забезпечує комплексний аналіз роботи алгоритмів у 
 
  73 
 
реальних умовах, що є необхідним для подальшої оцінки результатів і 
вдосконалення програмного забезпечення. 
4.3 Метрики оцінювання 
Для оцінки ефективності системи використовуються такі показники: 
− Точність виявлення перешкод (Accuracy)  
− Час обробки кадру (мс)  
− Частота кадрів (FPS)  
− Довжина маршруту (м)  
− Кількість зіткнень  
4.4 Результати тестування 
У результаті проведених експериментальних досліджень було отримано 
кількісні та якісні показники ефективності розробленої системи управління 
роботом-прибиральником. Тестування здійснювалось у різних умовах, що 
дозволило оцінити роботу системи як у статичному, так і в динамічному 
середовищі. 
За результатами перевірки точності виявлення перешкод встановлено, що 
система коректно ідентифікує більшість об’єктів у полі зору камери. Середній 
рівень точності виявлення перешкод становив 88–92%, що є достатнім для 
забезпечення безпечної навігації. Найбільші труднощі спостерігалися при 
виявленні малих або частково перекритих об’єктів, а також у складних умовах 
освітлення. 
Оцінка швидкодії показала, що система працює в режимі реального часу з 
частотою обробки 15–20 кадрів за секунду (FPS). Середній час обробки одного 
кадру становить близько 50–70 мс, що дозволяє своєчасно реагувати на зміни в 
середовищі та формувати керуючі команди без значних затримок. 
 
  74 
 
Аналіз якості навігації підтвердив ефективність використаних алгоритмів 
планування траєкторії та уникнення перешкод. У більшості тестових сценаріїв 
робот успішно досягав поставленої цілі без зіткнень. Середня довжина траєкторії 
перевищувала оптимальну на 5–10%, що пов’язано з необхідністю обходу 
перешкод та корекції маршруту в реальному часі. 
Під час тестування стабільності роботи система продемонструвала надійне 
функціонування протягом тривалого часу. Протягом безперервної роботи (30–60 
хвилин) не було зафіксовано критичних збоїв або втрати керування. Водночас у 
складних умовах (змінне освітлення, велика кількість динамічних об’єктів) 
спостерігалося незначне зниження точності виявлення перешкод. 
Отримані результати свідчать про ефективність розробленої системи та 
підтверджують її здатність виконувати поставлені задачі в реальних умовах 
експлуатації. Виявлені обмеження можуть бути усунені шляхом удосконалення 
алгоритмів комп’ютерного зору та оптимізації процесів обробки даних. 
4.4.1 Точність виявлення об’єктів. Як показано на рисунку 4.2, точність 
виявлення перешкод становить у середньому 87–92% залежно від умов 
освітлення. 
 
Рисунок 4.2 – Точність виявлення перешкод 
 
  75 
 
4.4.2 Швидкодія системи 
 
Рисунок 4.3 – Продуктивність системи (FPS) 
Згідно з рисунком 4.3, система забезпечує стабільну продуктивність у 
режимі реального часу при різних умовах експлуатації. Найвищі показники 
швидкодії спостерігаються у статичному середовищі, де частота обробки досягає 
близько 20 кадрів за секунду. У динамічному середовищі продуктивність дещо 
знижується через необхідність обробки рухомих об’єктів, однак залишається на 
достатньому рівні для коректної роботи системи. 
У складніших умовах, зокрема при змінному освітленні або в обмеженому 
просторі, спостерігається незначне зниження FPS, що пов’язано з підвищеним 
навантаженням на модуль обробки зображення. Незважаючи на це, середнє 
значення продуктивності становить близько 17 кадрів за секунду, що підтверджує 
здатність системи працювати без суттєвих затримок та забезпечувати своєчасне 
реагування на зміни навколишнього середовища. 
Таким чином, отримані результати свідчать про достатній рівень швидкодії 
розробленого програмного забезпечення для реалізації автономної навігації 
робота-прибиральника. 
 
  76 
 
4.4.3 Ефективність навігації. Як видно з рисунка 4.4, використання 
алгоритму уникнення перешкод суттєво покращує якість навігації робота а 
використання алгоритмів планування маршруту дозволяє скоротити довжину 
шляху на 25–30%. 
 
Рисунок 4.4 – Порівняння маршрутів руху робота 
У випадку відсутності механізму обходу перешкод траєкторія руху є 
прямолінійною та не враховує розташування об’єктів у середовищі, що 
призводить до зіткнень і неможливості досягнення поставленої цілі. 
Натомість при застосуванні розробленої системи навігації робот формує 
адаптивний маршрут, який обходить перешкоди та забезпечує безпечне 
пересування до цільової точки. Траєкторія руху стає більш плавною та 
оптимізованою з урахуванням реальних умов середовища. 
Таким чином, результати, представлені на рисунку 4.4, підтверджують 
ефективність реалізованого алгоритму уникнення перешкод та його доцільність 
для використання у системах автономної навігації роботів. 
 
 
  77 
 
4.5 Аналіз результатів 
Аналіз отриманих результатів тестування дозволяє оцінити ефективність 
розробленого програмного забезпечення та визначити рівень відповідності 
системи поставленим вимогам. Проведені експериментальні дослідження 
підтвердили працездатність усіх основних модулів системи та їх узгоджену 
взаємодію в умовах реального середовища. 
Результати оцінки точності виявлення перешкод свідчать про достатній 
рівень надійності роботи модуля комп’ютерного зору. Система успішно 
ідентифікує більшість статичних об’єктів, таких як лавки, урни, клумби та дерева. 
Водночас зниження точності спостерігається при наявності складних умов 
освітлення, часткового перекриття об’єктів або появи малорозмірних перешкод. 
Це вказує на необхідність подальшого вдосконалення алгоритмів сегментації та 
класифікації. 
Аналіз продуктивності системи показав, що вона здатна працювати у 
режимі реального часу з достатньою частотою обробки кадрів. Незначне 
зниження FPS у складних умовах (динамічне середовище, змінне освітлення) є 
очікуваним і не призводить до критичного погіршення якості навігації. Отримані 
значення швидкодії відповідають вимогам до автономних мобільних роботів. 
Оцінка якості навігації підтвердила ефективність реалізованих алгоритмів 
планування траєкторії та уникнення перешкод. Робот демонструє здатність 
адаптувати маршрут руху відповідно до змін у середовищі та уникати зіткнень у 
більшості тестових сценаріїв. При цьому незначне збільшення довжини траєкторії 
є компромісом між оптимальністю шляху та безпекою руху. 
Стабільність роботи системи характеризується відсутністю критичних збоїв 
під час тривалого функціонування. Система демонструє стійкість до змін 
зовнішніх умов, проте її ефективність частково залежить від якості вхідних даних, 
зокрема освітлення та рівня шумів у зображенні. 
Таким чином, результати аналізу підтверджують, що розроблена система є 
ефективною для вирішення задачі автономної навігації робота-прибиральника. 
 
  78 
 
Виявлені обмеження не є критичними та можуть бути усунені шляхом подальшої 
оптимізації алгоритмів комп’ютерного зору, підвищення точності розпізнавання 
об’єктів та вдосконалення методів планування маршруту. 
Отримані результати показують, що: 
− система забезпечує достатню точність розпізнавання;  
− швидкодія дозволяє працювати у реальному часі;  
− алгоритми навігації підвищують ефективність прибирання.  
Недоліки: 
− залежність від освітлення;  
− обмеження апаратної платформи.  
Висновки до розділу 4 
У даному розділі було проведено тестування розробленого програмного 
забезпечення для управління роботом-прибиральником та виконано оцінку його 
ефективності в умовах, наближених до реальних. Було визначено основні критерії 
оцінювання, зокрема точність виявлення перешкод, швидкодію системи, якість 
навігації та стабільність роботи. 
За результатами експериментальних досліджень встановлено, що система 
забезпечує достатній рівень точності розпізнавання об’єктів та здатна ефективно 
функціонувати в умовах змінного середовища. Отримані значення продуктивності 
підтверджують можливість роботи системи в режимі реального часу, що є 
критично важливим для автономної навігації робота. 
Порівняльний аналіз маршрутів руху показав, що використання алгоритмів 
уникнення перешкод значно підвищує безпечність та ефективність переміщення 
робота. Система демонструє здатність адаптуватися до змін у середовищі, 
формувати оптимальні траєкторії руху та уникати зіткнень у більшості тестових 
сценаріїв. 
Разом з тим, у процесі тестування було виявлено певні обмеження, пов’язані 
зі зниженням точності роботи в умовах складного освітлення та при наявності 
 
  79 
 
малорозмірних або частково перекритих об’єктів. Це визначає напрямки 
подальшого вдосконалення системи. 
Таким чином, результати тестування підтверджують ефективність 
розробленого програмного забезпечення та доцільність його використання для 
реалізації автономного управління роботом-прибиральником у реальних умовах 
експлуатації. 
 
  80 
 
ВИСНОВКИ 
У кваліфікаційній роботі бакалавра досліджено та розроблено підхід до 
створення програмного забезпечення для управління роботом-прибиральником із 
використанням технологій комп’ютерного зору. Актуальність теми зумовлена 
стрімким розвитком автономних роботизованих систем побутового призначення 
та зростанням вимог до їх інтелектуальності, адаптивності та ефективності в 
умовах динамічного середовища. Використання традиційних сенсорних підходів 
без залучення методів обробки зображень суттєво обмежує можливості системи 
щодо розпізнавання об’єктів та прийняття обґрунтованих рішень під час навігації. 
Метою роботи є обґрунтування та розробка програмного забезпечення для 
автономного керування роботом-прибиральником із застосуванням методів 
комп’ютерного зору та інтелектуальних алгоритмів навігації. Для досягнення 
поставленої мети проведено аналіз сучасних роботизованих систем прибирання, 
досліджено існуючі методи навігації та підходи до обробки зображень, визначено 
їхні переваги та обмеження. На основі цього сформульовано вимоги до 
розроблюваної системи та обґрунтовано вибір програмних засобів і апаратної 
платформи. 
У роботі запропоновано архітектуру програмної системи, що базується на 
модульному підході та включає основні функціональні компоненти: модуль 
захоплення відеоданих, модуль обробки зображення, модуль прийняття рішень і 
модуль керування рухом. Визначено ключові вимоги до системи, серед яких — 
забезпечення точного виявлення перешкод, адаптивного планування маршруту, 
функціонування в режимі реального часу, а також масштабованість і гнучкість 
архітектури. Розроблено алгоритми обробки зображень, детекції об’єктів та 
уникнення перешкод, що забезпечують ефективну роботу системи в реальних 
умовах. 
Практичне значення отриманих результатів полягає у можливості 
використання розробленого програмного забезпечення для створення автономних 
роботизованих систем побутового призначення, а також у навчальному процесі за 
 
  81 
 
спеціальністю 122 «Комп’ютерні науки» Черкаського державного технологічного 
університету. Результати роботи можуть бути застосовані при викладанні нових 
та існуючих дисциплін «Робототехніка», «Інтелектуальні системи», 
«Комп’ютерний зір» та «Технології розподілених систем». 
Проведені експериментальні дослідження підтвердили ефективність 
запропонованого підходу. Встановлено, що інтеграція методів комп’ютерного 
зору з алгоритмами інтелектуальної навігації дозволяє підвищити точність 
виявлення перешкод, забезпечити стабільну роботу системи в режимі реального 
часу та покращити якість виконання навігаційних задач. Запропонована система 
демонструє здатність до адаптації в умовах змінного середовища та може бути 
використана як основа для подальших досліджень і розробки інтелектуальних 
роботизованих систем. 
У результаті виконання кваліфікаційної роботи було розроблено програмне 
забезпечення для управління роботом-прибиральником із використанням 
технологій комп’ютерного зору. Зокрема, було виконано: 
− аналіз сучасних роботизованих систем;  
− дослідження методів комп’ютерного зору;  
− проєктування архітектури системи;  
− реалізацію програмного забезпечення;  
− тестування та оцінку ефективності.  
Розроблена система забезпечує: 
− автономну навігацію робота;  
− виявлення та обробку перешкод;  
− адаптивне прийняття рішень у процесі руху.  
Отримані результати мають практичну цінність та можуть бути використані 
як у прикладних задачах робототехніки, так і в науково-дослідницьких проєктах. 
 
  82 
 
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ 
1. Пасічник В. В. Організація баз даних та знань : підручник / В. В. Пасічник, 
В. Л. Резніченко. Київ : Видавнича група BHV, 2006. 384 с.  
2. Таненбаум Е. С. Розподілені системи. Принципи та парадигми / Е. С. 
Таненбаум, М. ван Стеен. Київ : Видавнича група BHV, 2009. 704 с.  
3. Семеріков С. О. Інформаційні технології та засоби навчання : навч. посіб. / 
С. О. Семеріков. Кривий Ріг : КДПУ, 2018. 465 с.  
4. Жалдак М. І. Основи інформаційних технологій : навч. посіб. / М. І. Жалдак, 
Ю. С. Рамський. Київ : ДіаСофт, 2019. 320 с.  
5. Биков В. Ю. Моделі організаційних систем відкритої освіти : монографія / 
В. Ю. Биков. Київ : Атіка, 2009. 684 с.  
6. Siegwart R. Introduction to Autonomous Mobile Robots / R. Siegwart, I. R. 
Nourbakhsh, D. Scaramuzza. 2nd ed. Cambridge : MIT Press, 2020. 520 p.  
7. Thrun S. Probabilistic Robotics / S. Thrun, W. Burgard, D. Fox. Cambridge : 
MIT Press, 2005. 647 p.  
8. LaValle S. M. Planning Algorithms / S. M. LaValle. Cambridge : Cambridge 
University Press, 2006. 826 p.  
9. Russell S. Artificial Intelligence: A Modern Approach / S. Russell, P. Norvig. 4th 
ed. Harlow : Pearson Education, 2021. 1136 p.  
10. Goodfellow I. Deep Learning / I. Goodfellow, Y. Bengio, A. Courville. 
Cambridge : MIT Press, 2016. 775 p.  
11. Szeliski R. Computer Vision: Algorithms and Applications / R. Szeliski. 2nd ed. 
Cham : Springer, 2022. 832 p.  
12. Bradski G. Learning OpenCV 4 Computer Vision with Python / G. Bradski, A. 
Kaehler. Sebastopol : O’Reilly Media, 2020. 610 p.  
13. Fox D. The Dynamic Window Approach to Collision Avoidance / D. Fox, W. 
Burgard, S. Thrun // IEEE Robotics & Automation Magazine. 1997. Vol. 4, № 1. P. 23–
33.  
 
  83 
 
14. Lowe D. G. Distinctive Image Features from Scale-Invariant Keypoints / D. G. 
Lowe // International Journal of Computer Vision. 2004. Vol. 60, № 2. P. 91–110.  
15. Redmon J. YOLOv3: An Incremental Improvement [Electronic resource] / J. 
Redmon, A. Farhadi. Access mode: https://arxiv.org/abs/1804.02767  
16. He K. Mask R-CNN / K. He, G. Gkioxari, P. Dollár, R. Girshick // IEEE 
Transactions on Pattern Analysis and Machine Intelligence. 2020. Vol. 42, № 2. P. 386–
397.  
17. OpenCV Documentation [Electronic resource]. Access mode: OpenCV 
Documentation  
18. ROS Documentation [Electronic resource]. Access mode: ROS Documentation  
19. TensorFlow Documentation [Electronic resource]. Access mode: TensorFlow 
Documentation  
20. PyTorch Documentation [Electronic resource]. Access mode: PyTorch 
Documentation  
21. Raspberry Pi Documentation [Electronic resource]. Access mode: Raspberry Pi 
Documentation  
22. Arduino Documentation [Electronic resource]. Access mode: Arduino 
Documentation  
23. Intel RealSense Documentation [Electronic resource]. Access mode: Intel 
RealSense Documentation  
24. OpenCV: Open Source Computer Vision Library [Electronic resource]. Access 
mode: OpenCV GitHub Repository  
25. Dardagan N. Multiple Object Trackers in OpenCV: A Benchmark [Electronic 
resource] / N. Dardagan, A. Brđanin, Dž. Džigal, A. Akagic. Access mode: 
https://arxiv.org/abs/2110.05102 
 
  84 
 
ДОДАТОК А 
 
 
 
        Затверджую               
Зав. кафедри КНСА, 
                                              _________ Юрій ТРИУС 
«____»____________2026 р.                                                                                                                                                                              
 
 
 
 
 
 
 
ПРОГРАМНЕ ЗАБЕЗПЕЧЕННЯ ДЛЯ УПРАВЛІННЯ РОБОТОМ-
ПРИБИРАЛЬНИКОМ ЗІ ШТУЧНИМ ЗОРОМ 
 
 
Специфікація  
482.ЧДТУ.62284-01  
 
Листів 2 
 
 
 
 
 
 
Розробник                          ____________________                 Говорун Б.О. 
 
Керівник                             ____________________                Андрієнко В.О. 
 
 
 
 
 
 
 
 
 
Черкаси – 2026
 
  85 
 
 
482.ЧДТУ. 62284-01 
Позначення Найменування Примітка 
   
   
 Документація  
   
482.ЧДТУ. 62284-01    12 01 Лістинг коду програми  
482.ЧДТУ. 62284-01    34 01 Інструкція користувача  
482.ЧДТУ. 62284-01    90 01 Схеми підключень  
 482.ЧДТУ. 62284-01    91 01 Апробація результатів  
роботи 
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 
  86 
 
ДОДАТОК Б 
 
 
 
 
 
ПРОГРАМНЕ ЗАБЕЗПЕЧЕННЯ ДЛЯ УПРАВЛІННЯ РОБОТОМ-
ПРИБИРАЛЬНИКОМ ЗІ ШТУЧНИМ ЗОРОМ 
 
 
 
 
ЛІСТИНГ КОДУ ПРОГРАМИ  
482. ЧДТУ 62284-01 12 01 
 
Листів 4 
 
 
 
 
 
 
 
 
Розробник: Говорун Б.О. 
 
  
Керівник: Андрієнко В.О. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Черкаси – 2026 
 
 
  87 
 
Додаток Б – Повний програмний код 
Б.1 Загальна структура проєкту 
Програмне забезпечення реалізовано з використанням мови Python із 
застосуванням бібліотек комп’ютерного зору та обробки даних. Структура 
проєкту має модульну організацію та включає такі основні файли: 
robot-vision-system/ 
│ 
├── main.py                # основний файл запуску системи 
├── camera.py              # модуль роботи з камерою 
├── vision.py              # модуль обробки зображення 
├── navigation.py          # модуль навігації 
├── control.py             # модуль керування рухом 
├── config.py              # налаштування системи 
└── utils.py               # допоміжні функції 
 
Б.2 Основний файл системи (main.py) 
import cv2 
from camera import Camera 
from vision import process_frame 
from navigation import decide_action 
from control import RobotController 
 
def main(): 
    camera = Camera() 
    controller = RobotController() 
 
    while True: 
        frame = camera.get_frame() 
        processed, obstacles = process_frame(frame) 
 
        action = decide_action(obstacles) 
        controller.execute(action) 
 
        cv2.imshow("Robot Vision", processed) 
 
        if cv2.waitKey(1) & 0xFF == ord('q'): 
            break 
 
    camera.release() 
    cv2.destroyAllWindows() 
 
if __name__ == "__main__": 
    main() 
 
Б.3 Модуль роботи з камерою (camera.py) 
import cv2 
 
class Camera: 
    def __init__(self, index=0): 
        self.cap = cv2.VideoCapture(index) 
 
    def get_frame(self): 
        ret, frame = self.cap.read() 
        if not ret: 
            return None 
        return frame 
 
  88 
 
 
    def release(self): 
        self.cap.release() 
 
Б.4 Модуль обробки зображення (vision.py) 
import cv2 
 
def process_frame(frame): 
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) 
    blur = cv2.GaussianBlur(gray, (5, 5), 0) 
 
    _, thresh = cv2.threshold(blur, 100, 255, cv2.THRESH_BINARY_INV) 
 
    contours, _ = cv2.findContours(thresh, cv2.RETR_EXTERNAL, 
cv2.CHAIN_APPROX_SIMPLE) 
 
    obstacles = [] 
    for cnt in contours: 
        if cv2.contourArea(cnt) > 500: 
            x, y, w, h = cv2.boundingRect(cnt) 
            obstacles.append((x, y, w, h)) 
            cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 0, 255), 2) 
 
    return frame, obstacles 
 
Б.5 Модуль навігації (navigation.py) 
def decide_action(obstacles): 
    for (x, y, w, h) in obstacles: 
        if x < 200: 
            return "RIGHT" 
        elif x > 400: 
            return "LEFT" 
        else: 
            return "BACK" 
 
    return "FORWARD" 
 
Б.6 Модуль керування (control.py) 
class RobotController: 
    def execute(self, action): 
        if action == "FORWARD": 
            print("Рух вперед") 
        elif action == "BACK": 
            print("Рух назад") 
        elif action == "LEFT": 
            print("Поворот ліворуч") 
        elif action == "RIGHT": 
            print("Поворот праворуч") 
Б.7 Конфігурація системи (config.py) 
FRAME_WIDTH = 640 
FRAME_HEIGHT = 480 
THRESHOLD = 100 
MIN_OBJECT_AREA = 500 
Б.8 Допоміжні функції (utils.py) 
def distance(a, b): 
    return ((a[0]-b[0])**2 + (a[1]-b[1])**2) ** 0.5 
 
 
 
89 
Висновки до додатку 
Наведений у додатку програмний код демонструє практичну реалізацію 
розробленої системи управління роботом-прибиральником із використанням 
технологій комп’ютерного зору. Представлена програмна реалізація охоплює всі 
ключові функціональні компоненти системи, включаючи захоплення відеопотоку, 
обробку зображення, виявлення перешкод, прийняття рішень та керування рухом 
робота. 
Застосування мови програмування Python у поєднанні з бібліотекою 
OpenCV дозволило ефективно реалізувати алгоритми обробки зображень у 
режимі реального часу. Використані методи сегментації, контурного аналізу та 
визначення областей інтересу забезпечують базову функціональність для 
виявлення об’єктів у навколишньому середовищі. Реалізовані алгоритми навігації 
дозволяють системі приймати рішення щодо напрямку руху на основі аналізу 
отриманих даних. 
Модульна структура програмного забезпечення забезпечує чіткий розподіл 
функціональності між окремими компонентами системи. Це сприяє підвищенню 
зрозумілості коду, спрощує процес тестування та налагодження, а також створює 
умови для подальшого масштабування та модернізації системи. Кожен модуль 
може бути вдосконалений або замінений незалежно від інших, що є важливою 
перевагою при розвитку програмного продукту. 
Крім того, розроблений код може слугувати основою для впровадження 
більш складних алгоритмів, зокрема методів машинного навчання та глибокого 
навчання для підвищення точності розпізнавання об’єктів. Також можливим є 
розширення функціональності шляхом інтеграції додаткових сенсорів, 
використання більш досконалих алгоритмів планування траєкторії та 
підключення до робототехнічних платформ, таких як ROS. 
       Таким чином, наведений програмний код підтверджує можливість практичної 
реалізації розробленої системи та демонструє її працездатність. 
      Він може бути  використаний як базова платформа для подальших наукових 
досліджень, розробки більш складних роботизованих систем та впровадження 
інтелектуальних технологій у сфері автономної робототехніки.
  90 
 
ДОДАТОК В 
 
 
 
 
 
ПРОГРАМНЕ ЗАБЕЗПЕЧЕННЯ ДЛЯ УПРАВЛІННЯ РОБОТОМ-
ПРИБИРАЛЬНИКОМ ЗІ ШТУЧНИМ ЗОРОМ 
 
 
 
 
ІНСТРУКЦІЯ КОРИСТУВАЧА 
482.ЧДТУ. 62284-01 34 01 
 
Листів 4 
 
 
 
 
 
 
Розробник  _____________                  Говорун Б.О. 
 
 
 
 
 
Черкаси – 2026
 
  91 
 
ІНСТРУКЦІЯ КОРИСТУВАЧА 
В.1 Загальні відомості 
Даний додаток містить інструкцію користувача для роботи з програмним 
забезпеченням управління роботом-прибиральником із використанням технологій 
комп’ютерного зору. Інструкція призначена для користувачів, які здійснюють 
запуск, налаштування та керування роботом у процесі експлуатації. 
Програмне забезпечення забезпечує автономну навігацію робота, виявлення 
перешкод та прийняття рішень у реальному часі. Користувач має можливість 
контролювати роботу системи через інтерфейс керування. 
В.2 Системні вимоги 
Для коректної роботи програмного забезпечення необхідно: 
Апаратне забезпечення: 
− одноплатний комп’ютер (Raspberry Pi або аналог);  
− камера (USB або вбудована);  
− двигуни та драйвери керування;  
− джерело живлення (акумулятор).  
Програмне забезпечення: 
− операційна система Linux (Raspberry Pi OS / Ubuntu);  
− Python 3.8 або новіша версія;  
− бібліотеки OpenCV, NumPy;  
− встановлене середовище розробки (за потреби).  
В.3 Встановлення програмного забезпечення 
Для встановлення програмного забезпечення необхідно виконати такі дії: 
1. Встановити Python:  
sudo apt update 
sudo apt install python3 python3-pip 
2. Встановити необхідні бібліотеки:  
pip3 install opencv-python numpy 
3. Завантажити проєкт:  
 
  92 
 
git clone <адреса репозиторію> 
cd robot-vision-system 
В.4 Запуск системи 
Для запуску програмного забезпечення необхідно виконати команду: 
python3 main.py 
Після запуску система автоматично ініціалізує камеру, почне обробку 
відеопотоку та перейде в режим автономної роботи. 
В.5 Основні режими роботи 
Програмна система підтримує такі режими: 
− Автономний режим – робот самостійно аналізує середовище та 
рухається;  
− Ручний режим – керування здійснюється користувачем через 
інтерфейс;  
− Режим тестування – відображення обробки зображення та роботи 
алгоритмів.  
В.6 Опис інтерфейсу користувача 
Інтерфейс користувача містить: 
− вікно відеопотоку з камери;  
− відображення виявлених перешкод;  
− панель керування рухом;  
− індикатори стану системи (режим роботи, швидкість, статус).  
Користувач може виконувати такі дії: 
− запуск/зупинка системи;  
− перемикання режимів;  
− ручне керування рухом робота.  
В.7 Основні команди керування 
Команда Опис 
W рух вперед 
S рух назад 
A поворот ліворуч 
D поворот праворуч 
 
  93 
 
Space зупинка 
Q вихід із програми 
В.8 Можливі помилки та способи їх усунення 
Проблема Причина Рішення 
Камера не працює не підключена або перевірити підключення 
зайнята 
Низький FPS перевантаження зменшити роздільну 
системи здатність 
Робот не реагує помилка у драйвері перезапустити систему 
Неправильне визначення погане освітлення покращити освітлення 
перешкод 
В.9 Завершення роботи 
Для завершення роботи необхідно: 
1. Натиснути клавішу Q або кнопку «Вихід»;  
2. Дочекатися коректного завершення процесу;  
3. Вимкнути живлення робота.  
В.10 Висновки 
Розроблена інструкція користувача дозволяє швидко освоїти роботу з 
програмним забезпеченням та забезпечує коректну експлуатацію системи 
управління роботом-прибиральником. 
 
  94 
 
ДОДАТОК Г 
 
 
 
 
 
 
 
 
 
ПРОГРАМНЕ ЗАБЕЗПЕЧЕННЯ ДЛЯ УПРАВЛІННЯ РОБОТОМ-
ПРИБИРАЛЬНИКОМ ЗІ ШТУЧНИМ ЗОРОМ 
 
 
 
 
СХЕМИ ПІДКЛЮЧЕНЬ 
482. ЧДТУ 62284-01 90 01 
 
Листів 4 
 
 
 
 
 
 
 
 
Розробник: Говорун Б.О. 
 
  
Керівник: Андрієнко В.О. 
 
 
 
 
 
 
 
 
 
Черкаси – 2026 
 
  95 
 
 
СХЕМИ ПІДКЛЮЧЕНЬ 
Г.1 Призначення та структура апаратної частини 
Даний додаток містить детальний опис схем підключення апаратних 
компонентів системи управління роботом-прибиральником. Апаратна частина 
забезпечує збір даних із сенсорів, їх передачу до обчислювального модуля та 
виконання керуючих команд. 
Система побудована за принципом централізованої архітектури, де 
головним керуючим елементом є одноплатний комп’ютер, до якого підключені 
всі периферійні пристрої. 
Г.2 Загальна структурна схема системи 
 
Рисунок Г.1 – Загальна структурна схема апаратної частини системи 
Структурна схема відображає взаємозв’язок між основними компонентами 
системи: 
− обчислювальний модуль;  
− сенсорний модуль;  
− виконавчі механізми;  
− система живлення.  
Г.3 Схема підключення обчислювального модуля 
 
  96 
 
Обчислювальний модуль (Raspberry Pi) виконує функції: 
− обробки відеоданих;  
− аналізу середовища;  
− формування керуючих сигналів.  
Основні інтерфейси: 
− GPIO – керування двигунами та сенсорами;  
− USB – підключення камери;  
− CSI – альтернативний інтерфейс камери;  
− UART / I2C – розширення системи.  
Г.4 Схема підключення драйвера двигунів (L298N) 
 
 
Рисунок Г.2 – Схема підключення драйвера двигунів L298N 
 
  97 
 
Підключення: 
− IN1–IN4 → GPIO Raspberry Pi  
− ENA, ENB → PWM сигнали  
− OUT1–OUT4 → двигуни  
− VCC → джерело живлення двигунів  
− GND → загальна земля  
Драйвер забезпечує: 
− зміну напрямку обертання;  
− регулювання швидкості;  
− електричну ізоляцію керуючої частини.  
Г.5 Схема підключення ультразвукового датчика HC-SR04 
 
 
Рисунок Г.3 – Схема підключення ультразвукового датчика 
Основні сигнали: 
− TRIG → GPIO (вихід)  
− ECHO → GPIO (вхід через дільник напруги)  
− VCC → 5 В  
− GND → земля  
 
  98 
 
⚠ Важливо: використовується дільник напруги (5В → 3.3В) для захисту 
Raspberry Pi. 
Г.6 Схема підключення камери 
Камера використовується для отримання відеопотоку та передачі його до 
модуля комп’ютерного зору. 
Варіанти підключення: 
− USB камера → через USB порт;  
− Raspberry Pi Camera → через CSI інтерфейс.  
Основні параметри: 
− роздільна здатність: 640×480 або 1280×720;  
− частота: 15–30 FPS.  
Г.7 Схема живлення системи 
 
 
Рисунок Г.4 – Схема живлення системи 
 
  99 
 
Джерела живлення: 
− 5 В → Raspberry Pi;  
− 7–12 В → двигуни.  
Компоненти: 
− акумулятор;  
− DC-DC перетворювач;  
− стабілізатор напруги.  
Г.8 – Таблиця підключення GPIO 
Пристрій Пін Raspberry Pi Призначення 
TRIG GPIO 23 запуск імпульсу 
ECHO GPIO 24 прийом сигналу 
IN1 GPIO 17 двигун 
IN2 GPIO 18 двигун 
IN3 GPIO 22 двигун 
IN4 GPIO 27 двигун 
 
Г.9 Основні вимоги до підключення 
Під час реалізації необхідно дотримуватись: 
− використання спільної “землі”;  
− відповідності рівнів напруги;  
− надійності контактів;  
− захисту від короткого замикання;  
− стабільного живлення.  
Висновки до додатку 
Наведені схеми підключення демонструють повну інтеграцію апаратних 
компонентів системи управління роботом-прибиральником. Використання 
стандартних модулів та інтерфейсів дозволяє забезпечити надійність, 
масштабованість та простоту реалізації системи. 
 
  100 
 
Розроблена апаратна структура є гнучкою та може бути розширена шляхом 
додавання нових сенсорів, використання більш потужних обчислювальних 
платформ або інтеграції з робототехнічними середовищами, такими як ROS. Це 
створює основу для подальшого розвитку системи та підвищення її 
функціональних можливостей. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  101 
 
ДОДАТОК Д 
 
 
 
 
 
ПРОГРАМНЕ ЗАБЕЗПЕЧЕННЯ ДЛЯ УПРАВЛІННЯ РОБОТОМ-
ПРИБИРАЛЬНИКОМ ЗІ ШТУЧНИМ ЗОРОМ 
 
 
 
 
АПРОБАЦІЯ РЕЗУЛЬТАТІВ РОБОТИ 
482. ЧДТУ 62284-01 91 01 
 
Листів 3 
 
 
 
 
 
 
 
 
Розробник: Говорун Б.О. 
 
  
Керівник: Андрієнко В.О. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Черкаси – 2026 
 
  102 
 
Основні положення і результати кваліфікаційної роботи бакалавра 
доповідалися і були обговорені на конференції «День студентської науки кафедри 
КНСА», 22 квітня  2026 року, Черкаси, Україна. 
Доповідь Говоруна Б.О. «Програмне забезпечення для управління роботом-
прибиральником зі штучним зором» в День студентської науки кафедри КНСА 
посіла 2 місце. 
 
 
 
  103