Робототехніка 101 Робототехніка — це створення машин, які можуть відчувати, приймати рішення та діяти у фізичному світі в умовах невизначеності. Широко використовуваний стандартний фреймінг (ISO 8373) описує робота як запрограмований, керований механізм із певною автономністю, що рухається у своєму середовищі для виконання задуманих завдань. Уявіть робота як петлю, що запускається тисячі разів на хвилину: Все починається з відчуття. Камери, LiDAR, радар, IMU, енкодери — кожен забезпечує частковий, гучний огляд світу та власного тіла робота. Потім робот виконує оцінку стану, що є вишуканим способом сказати: "З огляду на шумні вимірювання, де я, з якою швидкістю рухаюся і наскільки я невпевнений у цьому?" Без оцінки кожне рішення нижче за течією будується на піску. Коли робот має придатну оцінку, він здійснює сприйняття: виявлення об'єктів, вільного простору, перешкод і іноді семантичних позначок («це піддон», «це людина», «це двері»). Сприйняття — це те, де сучасне машинне навчання дуже допомагає, але саме тут робототехніка страждає через крайні випадки: відбивні поверхні, пил, дощ, розмиття руху, дивна геометрія. Потім настає планування. Планування зазвичай є багатошаровим: ➤ Планувальник високого рівня вирішує, що робити далі (підійти до проходу 7, вибрати пункт A, повернутися на місце) ➤ Планувальник руху вирішує, як рухатися без зіткнень і в межах фізичних обмежень ➤ Генератор траєкторії згладжує рух, щоб він був дійсно керований (без неможливих прискорень чи ривків) Керування перетворює цей план на моторні команди. Це частина, яку багато хто недооцінює: робот не «рухається до певної точки», він має постійно коригувати себе, поки світ відштовхується у відповідь (ковзання коліс, зміна корисного навантаження, зміни тертя, нагрівання суглобів). Під усім цим ховається апаратна реальність: механіка, виконавчі механізми, потужність і теплові обмеження. Робот із хорошим програмним забезпеченням, але слабкою активацією або поганим сенсором швидко стає ненадійним. Сучасні роботи рідко є єдиним монолітом програмного забезпечення. Це системи, що складаються з модулів, які публікують і підписуються на потоки даних. Ось чому ROS 2 широко використовується як системний фреймворк: він заохочує створення «графа вузлів», які обмінюються повідомленнями по темах, з налаштовуваною надійністю комунікації через налаштування QoS.