Клацніть будь-де на полотні, щоб встановити цільове положення. 3-ланковий плаский маніпулятор використовуватиме зворотну кінематику транспонованого якобіана, щоб перемістити захват до цієї точки в реальному часі.
// Пряма кінематика (2D) P0 = база P1 = P0 + L1·[cos(θ1), sin(θ1)] P2 = P1 + L2·[cos(θ1+θ2), sin(θ1+θ2)] P3 = P2 + L3·[cos(θ1+θ2+θ3), sin(θ1+θ2+θ3)] // Стовпець i якобіана (2D обертовий суглоб) Jx_i = -(P_ee.y - P_i.y) Jy_i = +(P_ee.x - P_i.x) // Крок ЗК транспонованим якобіаном dθ = α · J^T · e θ_нове = затиск(θ_старе + dθ, θ_мін, θ_макс)
Метод транспонованого якобіана був незалежно відкритий у робототехніці та комп'ютерній анімації. На відміну від методів псевдооберненої матриці, він не потребує обертання матриці і завжди чисельно стабільний, що робить його популярним у анімації персонажів реального часу та ігрових движках.
Що таке пряма кінематика в робототехніці?
Пряма кінематика (ПК) обчислює положення та орієнтацію захвату робота за відомими кутами суглобів. Для плаского 3-ланкового маніпулятора кожен суглоб додає обертання у ланцюг: P = T0 · T1 · T2, де кожна матриця Ti кодує трансляцію ланки та обертання суглобу.
Що таке зворотна кінематика і чому вона складніша за пряму?
Зворотна кінематика (ЗК) знаходить кути суглобів, що розміщують захват у бажаному положенні. Вона складніша, бо може мати кілька розв'язків, не мати розв'язку поза робочою зоною або бути погано обумовленою поблизу сингулярностей.
Як працює метод транспонованого якобіана?
Якобіан J відображає швидкості суглобів у швидкість захвату: v = J · dθ/dt. Метод використовує dθ = α · JT · e, де e — вектор похибки положення. Не потребує обертання матриці та природно обробляє надмірність ступенів вільності.
Сингулярності виникають, коли якобіан втрачає ранг — робот втрачає ступені вільності. У пласких маніпуляторах це трапляється при повному випрямленні або складанні ланок. Ця симуляція використовує загасаючий крок з константою λ для запобігання нескінченним швидкостям суглобів.
Обмеження суглобів визначають фізично досяжний діапазон руху кожного суглобу (тут ±150°). Перевищення меж у реальному обладнанні спричиняє зіткнення або пошкодження. Після кожної ітерації ЗК кути суглобів затискаються у межах допустимого діапазону, що може перешкоджати збіжності для недосяжних цілей.
SCARA (Selective Compliance Assembly Robot Arm) має 4 ступені вільності — 3 обертові суглоби у пласкій конфігурації плюс вертикальна вісь. Ця симуляція моделює пласку 3-ланкову частину, яка широко використовується у складанні електроніки та точних виробництвах.
Параметри DH — стандартизована угода з 4 параметрів (a, α, d, θ) для опису кінематичних ланцюгів. Для пласких обертових суглобів α=0 і d=0, зводячи опис до довжини ланки a та кута суглобу θ — саме це використовує дана симуляція.
Для 3-ланкового плаского маніпулятора з довжинами ланок L1, L2, L3 зовнішня межа досяжності — коло радіусом L1+L2+L3. Внутрішня межа — коло радіусом |L1−L2−L3|. Обмеження суглобів додатково звужують досяжну область.
ЗК лише для положення (як у цій симуляції) цілиться лише в координати x,y — 2 обмеження на 3 суглоби, залишаючи один ступінь надмірності. Повна ЗК для пози також обмежує орієнтацію захвату (кут), вичерпуючи всі 3 ступені вільності без надмірності.
Розв'язувач не збігається, коли ціль поза робочою зоною, конфігурація сингулярна з недостатнім загасанням, або обмеження суглобів перешкоджають досягненню цілі. Індикатор стану червоніє для недосяжних цілей та жовтіє під час активного розв'язання.