АндрійНосов
Аспірант КПІ ім. Ігоря Сікорського. Досліджую, як мобільні роботи безпечно працюють поруч із людьми: прогноз руху людей, планування і незалежний рівень безпеки на ПЛК.
Це робот моделі PLAI 3D, зібраний з коду до останнього гвинта. Оберіть вузол унизу — він розбереться вздовж осей збирання. Модель можна обертати.
Чим я займаюся
- ДослідженняПроактивне керування мобільними роботами поруч із людьми: прогноз руху, рівень безпеки на ПЛК, цифровий полігон PLAI 3D.Аспірантура, КПІ ім. Ігоря Сікорського
- Код ПЛКРівень безпеки на Structured Text: формальна перевірка, тести в OpenPLC і CODESYS.IEC 61131-3
- СтудентамМатеріали курсів, завдання й інструменти для автоматизації та робототехніки.Готуються
- БлогНотатки про робототехніку, автоматизацію і дослідження.Перший запис готується
PLAI 3D
Цифровий полігон до моєї дисертації: цех із мобільним роботом, людьми і незалежним рівнем безпеки на програмованому логічному контролері. У ньому порівнюються сім способів керування — від реактивного до проактивного, з прогнозом руху людей.
- 23 400
- поїздок у повному експерименті; кожну можна відтворити з того самого зерна
- 55 692
- комбінації входів коду контролера перевірено формально, порушень 0
- 5
- сценаріїв: коридор, обгін, перетин зони, перехрестя з іншим роботом, сліпе перехрестя
Працює в браузері, без встановлення. Доступ за паролем.
Публікації
- 2026Моделювання динаміки мобільних роботів в умовах невизначеності
Носов А. О., Коржик М. В. Вісник НТУ «ХПІ». Серія: Нові рішення в сучасних технологіях. № 2(28), с. 87–93. DOI 10.20998/2413-4295.2026.02.12
Рівень безпеки на ПЛК
Планувальник руху може помилитися, зависнути або отримати хибні дані. Тому між ним і приводами стоїть окремий функціональний блок на програмованому логічному контролері: він перевіряє кожну команду і за потреби зменшує швидкість або зупиняє робота.
- МоваStructured Text за IEC 61131-3
- Що перевіряєсигнал життєздатності, вік і діапазон команди, зону сканера, динамічну зону з оцінкою швидкості людини
- Формальна перевірка55 692 комбінації класів входів і CBMC: шість властивостей безпеки, 0 порушень
- Контролертест в OpenPLC пройдено, 0 порушень; пакет для CODESYS V3.5 готовий
Повний код блока — у PLAI 3D, вкладка «Як це працює».
(* 2. Вік команди і 3. діапазон команди *)
StaleCmd := CmdAgeMs > CMD_AGE_LIMIT;
(* x = x хибне лише для NaN *)
CmdValid := (CmdV = CmdV) AND (CmdW = CmdW);
RangeReject := NOT CmdValid OR (CmdV > V_MAX)
OR (CmdV < 0.0) OR (ABS(CmdW) > W_MAX);
IF RangeReject THEN
OutV := 0.0; OutW := 0.0;
ELSE
OutV := LIMIT(0.0, CmdV, V_MAX);
OutW := LIMIT(-W_MAX, CmdW, W_MAX);
END_IF;
IF StaleCmd THEN OutV := MIN(OutV, V_DEADLINE); END_IF;
Студентам
Тут будуть матеріали до занять, завдання й корисні інструменти. Якщо щось потрібно вже зараз, напишіть мені на пошту.
Блог
Нотатки про робототехніку, автоматизацію й дослідження: що працює, що ні і чому.
Перейти до блогу