Andrii Nosov
PhD student at National Technical University of Ukraine “Igor Sikorsky Kyiv Polytechnic Institute”. I study how mobile robots can work safely around people: human motion prediction, planning and an independent PLC safety layer.
This is the PLAI 3D model robot, built from code down to the last screw. Pick a subsystem below and it comes apart along its assembly axes. You can rotate the model.
What I do
- ResearchProactive control of mobile robots around people: motion prediction, a PLC safety layer, the PLAI 3D digital testbed.PhD, National Technical University of Ukraine “Igor Sikorsky Kyiv Polytechnic Institute”
- PLC codeA safety layer in Structured Text: formal verification, tests in OpenPLC and CODESYS.IEC 61131-3
- StudentsCourse materials, assignments and tools for automation and robotics.In preparation
- BlogNotes on robotics, automation and research.First post in preparation
PLAI 3D
The digital testbed for my dissertation: a factory hall with a mobile robot, people and an independent safety layer on a programmable logic controller. It compares seven control methods, from reactive to proactive with human motion prediction.
- 23 400
- runs in the full experiment; each one can be reproduced from the same seed
- 55 692
- input combinations of the controller code formally verified, 0 violations
- 5
- scenarios: corridor, overtaking, crossing a zone, intersection with another robot, blind intersection
Runs in the browser, nothing to install. Password protected.
Publications
- 2026Modelling the dynamics of mobile robots under uncertainty
Nosov A. O., Korzhyk M. V. Bulletin of the National Technical University “KhPI”. Series: New Solutions in Modern Technologies. No. 2(28), pp. 87–93. DOI 10.20998/2413-4295.2026.02.12
PLC safety layer
A motion planner can make mistakes, freeze or receive bad data. So between it and the drives sits a separate function block on a programmable logic controller: it checks every command and, when needed, slows the robot down or stops it.
- LanguageStructured Text, IEC 61131-3
- What it checksheartbeat, command age and range, scanner zone, a dynamic zone with an estimate of human speed
- Formal verification55,692 combinations of input classes plus CBMC: six safety properties, 0 violations
- ControllerOpenPLC test passed, 0 violations; a CODESYS V3.5 package is ready
The full code of the block is in PLAI 3D, “How it works” tab.
(* 2. Command age and 3. command range *)
StaleCmd := CmdAgeMs > CMD_AGE_LIMIT;
(* x = x is false only for 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;
Students
Class materials, assignments and useful tools will appear here. If you need something now, email me.
About
Andrii Oleksiiovych Nosov is a PhD student at the Department of Automation Hardware and Software, National Technical University of Ukraine “Igor Sikorsky Kyiv Polytechnic Institute”, Kyiv. I research proactive control of autonomous mobile robots that work around people, and an independent safety layer on a programmable logic controller.