Переміщення віртуального зчленованого об’єкта у віртуальному просторі із запобіганням зіткненню зчленованого об’єкта з елементами навколишнього простору

Номер патенту: 85820

Опубліковано: 10.03.2009

Автори: Шедмай Патрік, Майє Брюно, Рамстаін Едуар

Завантажити PDF файл.

Формула / Реферат

1. Спосіб переміщення віртуального зчленованого об'єкта (10) у віртуальному просторі (13) послідовністю елементарних переміщень, причому зчленований об'єкт (10) визначений у згаданому просторі (13) глобальним положенням, глобальною орієнтацією й кутами зчленувань, що визначають положення сукупності зчленованих елементів (11), що складають зазначений зчленований об'єкт відповідно до ступенів свободи, при цьому спосіб включає такі етапи: вирахування відстані взаємодії між зчленованим об'єктом (10) і елементами оточуючого його простору (13); визначення за відстанню взаємодії першої точки (Р1), що належить одному з елементів (11) зчленованого об'єкта (10), і другої точки (Р2), що належить елементу оточуючого його простору (13); визначення за першою й другою точками (P1, P2) унікального вектора () витягу, причому вектор витягу дорівнює різниці координат указаних першої (Р1) та другої (Р2) точок; та відведення зчленованого об'єкта (10) від елемента оточуючого його простору (13) за допомогою руху, визначеного відповідно до унікального вектора () витягу, причому рух відведення здійснюють рухом переносу, що впливає на глобальне положення зчленованого об'єкта, і/або рухом повороту, що впливає на глобальну орієнтацію зчленованого об'єкта, і/або рухом повороту зчленувань, що впливають на кожне зчленування, що належить послідовності зчленувань, яка передує елементу зчленованого об'єкта, якому належить зазначена перша точка, який відрізняється тим, що рух повороту, який впливає на глобальну орієнтацію зчленованого об'єкта (10), включає такі етапи:  визначення першого глобального вектора () між центром ваги зчленованого об'єкта (10) і початковою точкою вектора () витягу; визначення другого глобального вектора () між центром ваги зчленованого об'єкта (10) і кінцевою точкою вектора () витягу; вирахування кута () глобального повороту, необхідного для суміщення першого глобального вектора з другим глобальним вектором; вирахування одного або декількох елементарних кутів глобального повороту шляхом розкладання кута глобального повороту по одній або декількох осях, що визначають глобальну орієнтацію зчленованого об'єкта (10); та поворот зчленованого об'єкта (10) на один або декілька кутів, пропорційних одному або декільком елементарним кутам глобального повороту.

2. Спосіб за п. 1, який відрізняється тим, що додатково включає етап визначення наявності зіткнення зчленованого об'єкта (10) з елементами оточуючого його простору (13), що його проводять після кожного елементарного руху в зазначеній послідовності елементарних рухів.

3. Спосіб за п. 1 або 2, який відрізняється тим, що відстань взаємодії відповідає глибині проникнення таким чином, що вектор () витягу дорівнює різниці координат другої точки (Р2) і першої точки (Р1), причому зазначена глибина проникнення забезпечує можливість переміщення зчленованого об'єкта (10) з обмеженими й контрольованими зіткненнями з елементами оточуючого його простору (13).

4. Спосіб за п. 1 або 2, який відрізняється тим, що відстань взаємодії відповідає мінімальній відстані таким чином, що вектор () витягу дорівнює різниці координат першої точки (Р1) і другої точки (Р2), причому згадана мінімальна відстань забезпечує можливість переміщення зчленованого об'єкта (10) без зіткнень з елементами оточуючого його простору (13).

5. Спосіб за будь-яким з пп. 1-4, який відрізняється тим, що додатково включає етап скасування останнього елементарного руху в зазначеній послідовності елементарних рухів за наявності зіткнення зчленованого об'єкта (10) з елементом оточуючого його простору (13).

6. Спосіб за будь-яким з пп. 1-4, який відрізняється тим, що згадані етапи визначення першої й другої точок (Р1, Р2), визначення вектора () витягу й відведення зчленованого об'єкта (10) не здійснюють за відсутності зіткнення зчленованого об'єкта (10) з елементами оточуючого його простору (13).

7. Спосіб за будь-яким з пп. 1-5, який відрізняється тим, що рух переносу пропорційний компонентам вектора () витягу, що впливає на глобальне положення зчленованого об'єкта (10).

8. Спосіб за будь-яким з пп. 1-5, який відрізняється тим, що рух повороту зчленування, що впливає на дане зчленування (12а) кожного із зчленувань, що належать до послідовності зчленувань, які передують елементу зчленованого об'єкта, якому належить згадана перша точка, включає такі етапи: визначення першого локального вектора () між центром зазначеного зчленування (12а) і початковою точкою вектора () витягу; визначення другого локального вектора () між центром зазначеного зчленування (12а) і кінцевою точкою вектора () витягу; вирахування кута () локального повороту, необхідного для суміщення першого локального вектора з другим локальним вектором; вирахування одного або декількох елементарних кутів повороту зчленування шляхом розкладання кута локального повороту по одній або декількох осях, що визначають один або декілька ступенів свободи, що відповідають зазначеному зчленуванню; та поворот зчленованого елемента (11) у зазначеному зчленуванні на один або декілька кутів, пропорційних одному або декільком елементарним кутам зчленування.

9. Спосіб за п. 8, який відрізняється тим, що кут () глобального повороту вираховують за глобальним векторним добутком першого і другого глобальних векторів, а кут () локального повороту вираховують за локальним векторним добутком першого й другого локальних векторів.

10. Спосіб за будь-яким з пп. 8, 9, який відрізняється тим, що один або декілька елементарних кутів глобального повороту вираховують за одним або декількома скалярними добутками глобального векторного добутку й однієї або декількох осей ступенів глобальної орієнтації, а один або декілька елементарних кутів повороту зчленування вираховують за одним або декількома скалярними добутками локального векторного добутку й однієї або декількох осей ступенів свободи даного зчленування.

11. Спосіб за будь-яким з пп. 1-10, який відрізняється тим, що переміщення зчленованого об'єкта (10) здійснюють за допомогою чинника (22, 32) тяжіння, що впливає на глобальне положення і/або глобальну орієнтацію, і/або ступені свободи зчленованого об'єкта.

12. Спосіб за будь-яким з пп. 1-11, який відрізняється тим, що відведення зчленованого об'єкта від елементів оточуючого його простору здійснюють за допомогою чинника (21, 31) ковзання, що впливає на глобальне положення і/або глобальну орієнтацію, і/або ступені свободи зчленованого об'єкта.

13. Спосіб за будь-яким з пп. 1-12, який відрізняється тим, що додатково включає етап переміщення зчленованого об'єкта (10) у режимі реального часу, здійснюваного оператором за допомогою керуючого чинника (23, 33), що впливає на положення і/або орієнтацію, і/або ступені свободи зчленованого об'єкта.

14. Спосіб за будь-яким з пп. 1-13, який відрізняється тим, що зчленований об'єкт (10) являє собою віртуальний манекен (10а), що переміщується по підлозі віртуального простору, причому даний манекен визначений своїм положенням на зазначеній віртуальній підлозі, орієнтацією щодо вертикальної осі, яка перпендикулярна зазначеній підлозі та проходить через центр ваги манекена, й кутами зчленувань, що визначають сукупність його зчленованих елементів.

Текст

1. Спосіб переміщення віртуального зчленованого об'єкта (10) у віртуальному просторі (13) послідовністю елементарних переміщень, причому зчленований об'єкт (10) визначений у згаданому просторі (13) глобальним положенням, глобальною орієнтацією й кутами зчленувань, що визначають положення сукупності зчленованих елементів (11), що складають зазначений зчленований об'єкт відповідно до ступенів свободи, при цьому спосіб включає такі етапи: вирахування відстані взаємодії між зчленованим об'єктом (10) і елементами оточуючого його простору (13); визначення за відстанню взаємодії першої точки (Р1), що належить одному з елементів (11) зчленованого об'єкта (10), і другої точки (Р2), що належить елементу оточуючого його простору (13); визначення за першою й другою точками (P1, P2) унікального r вектора ( v ) витягу, причому вектор витягу дорівнює різниці координат указаних першої (Р1) та другої (Р2) точок; та відведення зчленованого об'єкта (10) від елемента оточуючого його простору 2 (19) 1 3 85820 4 4. Спосіб за п. 1 або 2, який відрізняється тим, 9. Спосіб за п. 8, який відрізняється тим, що кут що відстань взаємодії відповідає мінімальній відr ( qg ) глобального повороту вираховують за глобастані таким чином, що вектор ( v ) витягу дорівнює льним векторним добутком першого і другого глорізниці координат першої точки (Р1) і другої точки (Р2), причому згадана мінімальна відстань забезбальних векторів, а кут ( ql ) локального повороту печує можливість переміщення зчленованого об'вираховують за локальним векторним добутком єкта (10) без зіткнень з елементами оточуючого першого й другого локальних векторів. його простору (13). 10. Спосіб за будь-яким з пп. 8, 9, який відрізня5. Спосіб за будь-яким з пп. 1-4, який відрізняєтьється тим, що один або декілька елементарних ся тим, що додатково включає етап скасування кутів глобального повороту вирахо вують за одним останнього елементарного руху в зазначеній поабо декількома скалярними добутками глобальнослідовності елементарних рухів за наявності зіткго векторного добутку й однієї або декількох осей нення зчленованого об'єкта (10) з елементом отоступенів глобальної орієнтації, а один або декілька чуючого його простору (13). елементарних кутів повороту зчленування вирахо6. Спосіб за будь-яким з пп. 1-4, який відрізняєтьвують за одним або декількома скалярними добутся тим, що згадані етапи визначення першої й друками локального векторного добутку й однієї або r декількох осей ступенів свободи даного зчленугої точок (Р1, Р2), визначення вектора ( v ) витягу й вання. відведення зчленованого об'єкта (10) не здійсню11. Спосіб за будь-яким з пп. 1-10, який відрізняють за відсутності зіткнення зчленованого об'єкта ється тим, що переміщення зчленованого об'єкта (10) з елементами оточуючого його простору (13). (10) здійснюють за допомогою чинника (22, 32) 7. Спосіб за будь-яким з пп. 1-5, який відрізняєтьтяжіння, що впливає на глобальне положення і/або ся тим, що рух переносу пропорційний компоненr глобальну орієнтацію, і/або ступені свободи зчлетам вектора ( v ) витягу, що впливає на глобальне нованого об'єкта. положення зчленованого об'єкта (10). 12. Спосіб за будь-яким з пп. 1-11, який відрізня8. Спосіб за будь-яким з пп. 1-5, який відрізняєтьється тим, що відведення зчленованого об'єкта ся тим, що рух повороту зчленування, що впливає від елементів оточуючого його простору здійснюна дане зчленування (12а) кожного із зчленувань, ють за допомогою чинника (21, 31) ковзання, що що належать до послідовності зчленувань, які певпливає на глобальне положення і/або глобальну редують елементу зчленованого об'єкта, якому орієнтацію, і/або ступені свободи зчленованого належить згадана перша точка, включає такі етаоб'єкта. пи: визначення першого локального вектора ( v1l ) 13. Спосіб за будь-яким з пп. 1-12, який відрізняміж центром зазначеного зчленування (12а) і поється тим, що додатково включає етап переміr чатковою точкою вектора ( v ) витягу; визначення щення зчленованого об'єкта (10) у режимі реального часу, здійснюваного оператором за другого локального вектора ( v2l ) між центром задопомогою керуючого чинника (23, 33), що вплизначеного зчленування (12а) і кінцевою точкою ває на положення і/або орієнтацію, і/або ступені r вектора ( v ) витягу; вирахування кута ( ql ) локальсвободи зчленованого об'єкта. ного повороту, необхідного для суміщення першо14. Спосіб за будь-яким з пп. 1-13, який відрізняго локального вектора з другим локальним вектоється тим, що зчленований об'єкт (10) являє сором; вирахування одного або декількох бою віртуальний манекен (10а), що переміщується елементарних кутів повороту зчленування шляхом по підлозі віртуального простору, причому даний розкладання кута локального повороту по одній манекен визначений своїм положенням на зазнаабо декількох осях, що визначають один або декіченій віртуальній підлозі, орієнтацією щодо вертилька ступенів свободи, що відповідають зазначекальної осі, яка перпендикулярна зазначеній підному зчленуванню; та поворот зчленованого елелозі та проходить через центр ваги манекена, й мента (11) у зазначеному зчленуванні на один або кутами зчленувань, що визначають сукупність його декілька кутів, пропорційних одному або декільком зчленованих елементів. елементарним кутам зчленування. Даний винахід належить до галузі імітації переміщення віртуального зчленованого об'єкта у віртуальному просторі. Винахід стосується, зокрема, запобігання зіткненням зчленованих елементів зчленованого об'єкта з елементами оточуючого його простору. Моделювання у віртуальній реальності використовується в даний час у різноманітних галузях, наприклад, в авіаційній і космічній промисловості. Наприклад, цифрові моделі часто використовують для оцінки взаємодії між різноманітними деталями. Крім того, моделювання може використовуватися для імітації дій людини або робота за певних умов з метою унаочнення, наприклад, переміщень, що їх має здійснити технік або робот для виконання таких дій. Ця методика корисна для оцінки й оптимізації доступності певних елементів устаткування, наприклад двигуна літака, що потребують регулярного огляду й обслуговування. Таким чином, моделювання з використанням віртуального зчленованого об'єкта дозволяє контролювати ступінь доступності різноманітних елементів конструкцій уже на стадії їхнього моделювання. Віртуальний зчленований об'єкт являє собою сукупність цифрових даних, що визначають кінематичну систему, характеризовану декількома 5 85820 6 зчленованими елементами, що їм відповідає певваного об'єкта з елементом навколишнього на кількість ступенів свободи. простору. Таким чином, кожного моменту віртуальний Таким чином, спосіб за винаходом використозчленований об'єкт може бути визначений своїм вує єдине вирахування відстані взаємодії для відзагальним положенням у метричному просторі й ведення зчленованого об'єкта від елементів отозначеннями ступенів свободи своїх зчленувань чуючого його простору. Це забезпечує значне (суглобів). Ці дані, а також параметри, що визнаспрощення процедури й істотну економію часу. чають простір, у якому знаходиться віртуальний Спосіб за винаходом додатково включає етап зчленований об'єкт, можуть бути збережені на визначення наявності зіткнення зчленованого об'носії цифрових даних. єкта з елементами оточуючого його простору, проВідомі застосування віртуальних зчленованих ведений після кожного елементарного руху в заоб'єктів у застосуваннях такого роду. значеній послідовності елементарних рухів. Один із прикладів такого застосування навоЗа першим варіантом здійснення винаходу диться у [статті Chedmail, Damay et Le Roy, назвавідстань взаємодії відповідає глибині проникнення ній "Réalité virtuelle, maquette numérique du produit, таким чином, що вектор витягу дорівнює різниці outils de distribution et partage de la conception" координат другої точки й першої точки. Дана гли(Journées Priméca, La Plagne, -9 avril 1999)]. бина проникнення забезпечує можливість переміУ цій статті пропонується спосіб оцінки легкощення зчленованого об'єкта з обмеженими й контсті монтажу й демонтажу об'єктів у загромадженорольованими зіткненнями з елементами му просторі за допомогою моделі переміщення оточуючого його простору. двох віртуальних зчленованих рук або віртуальноЗа другим варіантом здійснення винаходу відго манекена у віртуальному просторі. стань взаємодії відповідає мінімальній відстані Для запобігання зіткненням зчленованих рук з таким чином, що вектор витягу дорівнює різниці елементами навколишнього простору за методикоординат першої точки й другої точки. Дана мінікою, запропонованою в зазначеній статті, викорисмальна відстань забезпечує можливість перемітовується вирахування градієнту лінії зіткнення щення зчленованого об'єкта без зіткнень з елемещодо ступенів свободи зчленованих рук. нтами оточуючого його простору. Для вирахування градієнтів за методом кінцеСпосіб додатково включає етап скасування вих різниць необхідно здійснити численні переміостаннього елементарного руху в зазначеній пощення кожного зчленування зчленованих рук і слідовності елементарних рухів за наявності зіткрозрахувати для кожного переміщення довжину нення зчленованого об'єкта з елементом оточуюлінії зіткнення. Ця методика вкрай повільна і почого його простору. требує великих витрат часу на обчислення. В оптимальному варіанті згадані етапи визнаЗадача, на вирішення якої спрямовано даний чення першої й другої точок, визначення вектора винахід, полягає в усуненні вищеописаних хиб і в витягу й відведення зчленованого об'єкта не здійпропозиції способу, що дозволяє імітувати переснюють за відсутності зіткнення даного зчленоваміщення або маніпуляції зчленованого об'єкта із ного об'єкта з елементами оточуючого його просзапобіганням, його зіткненням з елементами ототору. чуючого його простору з обмеженням часу розраВідповідно до першої особливості винаходу хунків. відведення зчленованого об'єкта від елемента Для вирішення поставлених задач пропонуоточуючого його простору може бути здійснено ється спосіб переміщення віртуального зчленоварухом переносу, пропорційним компонентам векного об'єкта у віртуальному просторі послідовністю тора витягу й що впливають на глобальне полоелементарних переміщень, причому зчленований ження зчленованого об'єкта. об'єкт визначений у даному просторі глобальним Відповідно до другої особливості винаходу положенням, глобальною орієнтацією та кутами відведення зчленованого об'єкта від елемента зчленувань, що визначають положення сукупності оточуючого його простору здійснюють рухом повозчленованих елементів, що складають зазначений роту, що впливає на глобальну орієнтацію зчленозчленований об'єкт, відповідно до ступенів свобованого об'єкта, причому рух повороту включає такі ди. Спосіб за винаходом включає такі етапи: етапи: - вирахування відстані взаємодії між зчлено- визначення першого глобального вектора між ваним об'єктом і елементами оточуючого його центром ваги зчленованого об'єкта і початковою простору; точкою вектора витягу; - визначення за відстанню взаємодії першої визначення другого глобального вектора між точки, що належить одному із зчленованих елемецентром ваги зчленованого об'єкта й кінцевою нтів зчленованого об'єкта, і другої точки, що налеточкою вектора витягу; жить елементу оточуючого його простору; - вирахування кута глобального повороту, не- визначення за першою і другою точками уніобхідного для суміщення першого глобального кального вектора витягу; вектора з другим глобальним вектором; - відведення зчленованого об'єкта від елемен- вирахування одного або декількох елементата оточуючого його простору рухом, визначеним рних кутів глобального повороту шля хом розклавідповідно до унікального вектора витягу і що дання кута глобального повороту по одній або впливає на глобальне положення і/або на глобадекільком вісям, що визначають глобальну орієнльну орієнтацію, і/або на ступені свободи зчленотацію зчленованого об'єкта; ваного об'єкта для запобігання зіткненням зчлено 7 85820 8 - поворот зчленованого об'єкта на один або Відповідно до однієї з особливостей винаходу декілька кутів, пропорційних одному або декільком зчленований об'єкт може являти собою віртуальелементарним кутам глобального повороту. ний манекен, що переміщується по підлозі віртуаВідповідно до третьої особливості винаходу льного простору. Даний манекен визначається відведення зчленованого об'єкта від елемента своїм положенням на віртуальній підлозі, орієнтаоточуючого його простору здійснюють рухом повоцією щодо вертикальної осі, перпендикулярної роту зчленування, що впливає на кожне зі зчленупідлозі та що проходить через центр ваги манекевань, що належать послідовності зчленувань, які на, й кутами зчленувань, що визначають сукуппередують елементу зчленованого об'єкта, якому ність його зчленованих елементів. належить згадана перша точка. При цьому рух Винахід також охоплює комп'ютерну програму, повороту зчленування, що впливає на дане зчлерозроблену для здійснення вищеописаного спосонування кожного із вказаних зчленувань, включає бу шляхом її виконання на комп'ютері. такі етапи: Інші особливості й переваги способу й системи - визначення першого локального вектора між за винаходом стануть ясні з нижченаведеного доцентром згаданого зчленування й початковою точкладного опису, поданого без накладення якихкою вектора витягу; небудь обмежень з посиланнями на додані крес- визначення другого локального вектора між лення. На кресленнях: центром згаданого зчленування й кінцевою точкою - Фіг.1 зображує в перспективі апаратні засоби, вектора витягу; що служать для здійснення системи або способу - вирахування кута локального повороту, неза винаходом; обхідного для суміщення першого локального век- Фіг.2А вкрай схематично ілюструє віртуальтора з другим локальним вектором; ний зчленований об'єкт, визначений відповідно до - вирахування одного або декількох елементавинаходу в метричному просторі; рних кутів повороту зчленування шляхом розкла- Фіг.2В украй схематично ілюструє віртуальдання кута локального повороту по одній або декіний манекен, визначений відповідно до винаходу в лькох осям, що визначають один або декілька метричному просторі; ступенів свободи, що відповідають зазначеному - Фіг.3 А украй схематично ілюструє вектор визчленуванню; тягу, визначений відповідно до винаходу в режимі - поворот зчленованого елемента в зазначемінімальної відстані; ному зчленуванні на один або декілька кутів, про- Фіг.3В украй схематично ілюструє вектор випорційних одному або декільком елементарним тягу, визначений відповідно до винаходу в режимі кутам зчленування. глибини проникнення; Кут глобального повороту може бути вираху- Фіг.4 вкрай схематично ілюструє рух відвеваний за глобальним векторним добутком першого дення, що впливає відповідно до винаходу на глой другого глобальних векторів, а кут локального бальне положення зчленованого об'єкта; повороту може бути вирахуваний за локальним - Фіг.5 украй схематично ілюструє рух відвевекторним добутком першого й другого локальних дення відповідно до винаходу, що впливає на гловекторів. бальну орієнтацію зчленованого об'єкта; Один або декілька елементарних кутів глоба- Фіг.6 украй схематично ілюструє рух відвельного повороту можуть бути вирахувані за одним дення, що впливає відповідно до винаходу на одне або декількома скалярним добутками глобального конкретне зчленування зчленованого об'єкта; векторного добутку й одною або декількома осями - Фіг.7А являє собою блок-схему, яка ілюструє ступенів глобальної орієнтації, а один або декілька основні етапи переміщення зчленованого об'єкта елементарних кутів повороту зчленування можуть за винаходом; бути вира хувані за одним або декількома скаляр- Фіг.7В являє собою модифікацію Фіг.7А; ними добутками локального векторного добутку й - Фіг.8 украй схематично ілюструє архітектур у однією або декількома осями ступенів свободи багатофакторної системи, використовуваної для даного зчленування. переміщення зчленованого об'єкта відповідно до Відповідно до одного з варіантів здійснення винаходу. винаходу переміщення зчленованого об'єкта може На Фіг.1 зображена система, що може бути вибути здійснене за допомогою чинника тяжіння, що користана для моделювання переміщень зчленовпливає на глобальне положення і/або глобальну ваного об'єкта. Ця система містить робочу станцію орієнтацію, і/або ступені свободи зчленованого або комп'ютер 1, що має гарні графічні характериоб'єкта. стики й використовується для виконання комп'юВідведення зчленованого об'єкта від елементерної програми, розробленої для здійснення спотів оточуючого його простору може бути здійснене собу за винаходом. за допомогою чинника ковзання, що впливає на Комп'ютер 1 містить звичайні для пристроїв глобальне положення і/або глобальну орієнтацію, такого типу апаратні засоби. Конкретніше, комп'юі/або ступені свободи зчленованого об'єкта. тер містить центральний блок 2, що виконує поВ оптимальному варіанті спосіб додатково слідовності команд програмного забезпечення, що включає етап переміщення зчленованого об'єкта в відповідає способу за винаходом, центральний режимі реального часу, здійснюваного оператором запам'я товуючий пристрій 3, який зберігає дані за допомогою керуючого чинника, що впливає на виконуваних програм, носії цифрових даних (жорсположення і/або орієнтацію, і/або ступені свободи ткий диск, дисковід 4 для компакт-дисків, дисковід зчленованого об'єкта. для гнучких дисків то що), що забезпечують тривале зберігання даних і програмного забезпечення, 9 85820 10 периферійні пристрої вводу (клавіатур у 5, миша 6 підлозі і що проходить через центр G ваги манекетипу "2D" або "3D", джойстик тощо). До складу на 10а. комп'ютера входять також периферійні пристрої Зчленований об'єкт 10, наприклад манекен виводу (екран 7, стереоскопічні шоломи або оку10а, за відомою методикою може бути переміщеляри тощо), які забезпечують відображення перений у віртуальному просторі 13 за допомогою поміщень зчленованого об'єкта. слідовності елементарних рухів, наприклад, щоб Зрозуміло, для збільшення обчислювальних досягти певної мети 13с. Так, для створення траєпотужностей моделювання за винаходом може кторії, що дозволяє зчленованому об'єкту 10 досяздійснюватися на декількох робочих станціях, що гти мети 13с, можна впливати на глобальне полопрацюють паралельно. ження зчленованого об'єкта 10, використовуючи На Фіг.2А вкрай схематично зображений віртузаздалегідь визначений крок Dр зміни глобального альний зчленований об'єкт 10, визначений дереположення, і/або на орієнтацію зчленованого воподібною структурою зчленувань. Таким чином, об'єкта, використовуючи заздалегідь визначений зчленований об'єкт 10 визначений сукупністю "пакрок Dо зміни орієнтації, і/або на ступені свободи сивних об'єктів", тобто зчленованих елементів 11, зчленованого об'єкта, використовуючи заздалегідь сполучених між собою зчленуваннями 12, що мовизначений крок Da переміщення зчленувань. жуть бути класифіковані за відомими методиками. Цей процес можна представити як тяжіння Зчленованому об'єкту 10 також може бути зчленованого об'єкта 10 до мети 13с без урахуприписана локальна система відліку з початком вання розмірів мети 13с або будь-яких інших об'координат у центрі G ваги цього об'єкта. єктів 13а, 13b простору 13. Зокрема, ця локальна система відліку може Щоб запобігти внутрішнім зіткненням зчленоr ваного об'єкта 10 з елементами оточуючого його містити єдину вісь Z , що проходить через центр G простору 13, слід визначити критерій зіткнення. ваги зчленованого об'єкта 10. Такий критерій може бути визначений за методиЗчленований об'єкт 10 перемішується у віртукою, відомою фахівцям у даній галузі, шля хом виальному просторі 13, загромадженому декількома рахування відстані взаємодії зчленованого об'єкта об'єктами або перешкодами 13а, 13b, 13c, 13d, 10 з елементами оточуючого його простору 13, що зіткнення з якими зчленований об'єкт 10 має унитакож містять точки, які визначають цю відстань кати в процесі свого переміщення. Зчленований взаємодії. об'єкт 10 і оточуючий його простір визначені в меСлід зазначити, що відстань взаємодії може тричному просторі (О; х, у, z). відповідати мінімальній відстані між зчленованим У цьому метричному просторі легко можуть об'єктом 10 і елементом оточуючого його простору бути визначені положення й орієнтації зчленованоабо глибині їхнього взаємного проникнення. го об'єкта 10 і різноманітних об'єктів 13а, 13b, 13c, На Фіг.3А і 3В проілюстроване визначення від13d оточуючого його простору 13. стані взаємодії елемента зчленованого об'єкта 10 і Так, об'єкт 10 в оточуючому його просторі 13 об'єкта 13d, що належить навколишньому простоможе бути в будь-який момент визначений глобарові. льним положенням, глобальною орієнтацією й Зокрема, приклад, поданий на Фіг.3А, ілюстр ує кутами нахилу зчленувань, що визначають полокритерій мінімальної відстані між зчленованим ження сукупності зчленованих елементів 11 відпооб'єктом 10 і елементом оточуючого його простовідно до їхніх ступенів свободи. ру, а також точки Р1 і Р2, що визначають цю мініГлобальне положення зчленованого об'єкта 10 мальну відстань. може бути визначено декартовими координатами Далі, приклад, поданий на Фіг.ЗВ, ілюстр ує його центру G ваги по осях х, у, z. критерій глибини взаємного проникнення зчленоГлобальна орієнтація може бути визначена за ваного об'єкта 10 і елемента оточуючого його провідомою методикою трьома кутами, що визначастору, а також точки Р1 і Р2, що визначають цю ють орієнтацію приписаної до зчленованого об'єкr глибину проникнення. та осі Z щодо осей х, у, z. Таким чином, вирахування відстані взаємодії Зрозуміло, також слід ураховува ти параметри дозволяє визначити точку Р1, в подальшому описі або обмеження, що накладаються межами руху називану "першою точкою", що належить одному з зчленувань і фізичними зв'язками між різноманітелементів 11 зчленованого об'єкта 10, та іншу точними частинами тіла або елементами 11 зчленоку Р2, надалі називану "другою точкою", що налеваного об'єкта 10. жить навколишньому просторові 13. Ці дані і змінні, що визначають зчленований Це дозволяє визначити по цим першій точці Р1 об'єкт 10, а також параметри, що визначають отоr і другій точці Р2 унікальний вектор V витягу. чуючий його простір 13, зберігають у запам'ятовуВідповідно до методу, заснованому на обчисючому пристрої 3 комп'ютера 1. r Як показано на Фіг.2В, зчленований об'єкт моленні мінімальної відстані (Фіг.3А), вектор V витяже, зокрема, являти собою віртуальний манекен гу дорівнює різниці координат першої точки Р1 і 10а, що переміщується по підлозі у віртуальному другої точки Р2. Іншими словами, друга точка Р2 r просторі 13. утворює початкову точку вектора V витягу, а пеУ цьому випадку манекен 10а може бути виr значений кутами зчленувань, що визначають сукурша точка Р1 утворює кінцеву точку вектора V витягу. пність його зчленованих елементів, своїм полоУ той же час, відповідно до методу, засноваженням на віртуальній підлозі й орієнтацією щодо ного на обчисленні глибини проникнення (Фіг.3В), вертикальної осі Z1 , перпендикулярної зазначеній 11 85820 12 r r вектор V витягу дорівнює різниці координат друвектора V . У даному прикладі початковою точкою r гої точки Р2 і першої точки Р1. Іншими словами вектора V витягу є друга точка Р2, проте у випадперша точка Р1 утворює початкову точку вектора ку використання методу глибини проникнення нею r V витягу, а др уга точка Р2 утворює кінцеву точку була б перша точка P1. r Аналогічним чином визначають другий глобавектора V витягу. Нарешті, для запобігання зіткненням зчленольний вектор V2g , що з'єднує центр G ваги зчлеr ваного об'єкта 10 з елементами оточуючого його нованого об'єкта 10 і кінцеву точку Р1 вектора V простору 13 цей зчленований об'єкт 10 може бути витягу. відведений від елементів оточуючого його простоПотім вираховують називаний надалі "кутом ру рухом, визначеним відповідно до унікального r глобального повороту" кут qg повороту, необхідвектора V витягу й що впливає на глобальне положення і/або глобальну орієнтацію, і/або ступені ного для суміщення першого глобального вектора свободи зчленованого об'єкта 10. V1g і другого глобального вектора V2g . Кут qg На Фіг.4-6 проілюстровані рухи відведення глобального повороту може бути вирахуваний з зчленованого об'єкта за методом мінімальної відвикористанням векторного добутку (називаного стані. Проте даний принцип, зрозуміло, залишанадалі "глобальним векторним добутком") першого ється незмінним і у випадку використання методу глибини проникнення. глобального вектора V1g і другого глобального На Фіг.4 зображений рух відведення, що впливектора V2g . Таким чином, кут qg глобального ває на глобальне положення зчленованого об'єкповороту вираховують по такій формулі: та. Відведення зчленованого об'єкта 10 від елемента навколишнього простору 13 здійснюють V1g ´ V 2g qg = . рухом М1 переносу, пропорційним компонентам V1g × V2g r вектора V витягу, що впливає на глобальне поr ложення зчленованого об'єкта, тобто М1 = l V , де Цей кут qg глобального повороту розкладаl - позитивний коефіцієнт. ють на один або декілька елементарних кутів qgi Зокрема, у випадку манекена 10а, у якому глобального повороту, що відповідають осям, які глобальне положення визначене в площині (х, у), визначають глобальну орієнтацію зчленованого r об'єкта. Один або декілька елементарних кутів qgi враховують тільки проекцію вектора V витягу на глобального повороту можуть бути обчислені з цю площину. використанням скалярного добутку або добутків Таким чином, рух переносу робить внесок у глобального векторного добутку та однієї або дезапобігання зіткненням шляхом глобального пекількох осей глобальної орієнтації. реміщення зчленованого об'єкта 10. r Нарешті, зчленований об'єкт 10 повертають на Слід зазначити, що унікальний вектор V витяодин або декілька кутів a, пропорційних зазначегу, розрахований за мінімальною відстанню або ним елементарним кутам qgi глобального повороглибиною проникнення, може бути нормований на ту. Елементарні кути qgi глобального повороту величину елементарного кроку Dр зміни положеннормовані на величини, що відповідають елемення, тобто рух МІ переносу визначають за такою тарному кроку Dо зміни орієнтації, тобто формулою: a= qgi Do . r М1 = V D p . Зокрема, якщо глобальна орієнтація зчленоr ваного об'єкта визначається єдиною віссю Z , як у прикладі, наведеному на Фіг.2, то обертальний рух На Фіг.5 зображений рух відведення, що вплиr ває на глобальну орієнтацію зчленованого об'єкта. зчленованого об'єкта навколо даної осі Z визнаВідведення зчленованого об'єкта 10 від елечає єдиний нормований елементарний кут глобамента навколишнього простору 13 здійснюють льного повороту a, що обчислюється за такою визначенням повороту навколо певної точки (наформулою: приклад, центру G ваги), необхідного для зсуву r r точки прикладання вектора V витягу на цьому Z × qg a = sin-1 зчленованому об'єкті 10 у напрямку цього вектора r Do V . Кут цього повороту нормований на величину елементарного кроку Dо зміни орієнтації. На Фіг.6 проілюстрований рух повороту зчлеТакий рух повороту, що впливає на глобальну нування, що впливає на ступені свободи зчленоорієнтацію зчленованого об'єкта 10, може бути ваного об'єкта. визначено такою послідовністю дій. Слід зазначити, що відведення зчленованого об'єкта 10 від елемента оточуючого його простору Визначають вектор V1g , називаний надалі 13 здійснюють рухом повороту зчленування, що "першим глобальним вектором", що з'єднує центр впливає на кожне з його зчленувань 12, які налеG ваги зчленованого об'єкта 10 і початкову точку жать до послідовності зчленувань, що передує 13 85820 14 елементу 11 зчленованого об'єкта, якому налеторного добутку й однієї або декількох осей Ui жить визначена вище перша точка Р1 (см, Фіг.2А і ступенів свободи даного зчленування 12а. 2В). Нарешті, зчленований елемент повертають у Якщо, наприклад, зчленований об'єкт являє даному зчленуванні на один або декілька кутів aі, собою віртуальний манекен 10а, а відстань взаєпропорційних зазначеним одному або декільком модії манекена 10а і елемента оточуючого його елементарним кутам qΙi повороту зчленування. простору 13 визначено першою точкою Р1, що Елементарні кути qΙi повороту зчленування знаходиться на передпліччі, то послідовність нормовані на величини, що відповідають крокам зчленувань відповідає ліктю, плечу і ключиці. ІнDa зсуву зчленування. шими словами, рух повороту зчленування розраЗчленований елемент повертають у даному ховують таким чином, щоб він впливав на всі зчленуванні на один або декілька кутів aі, обчисзчленування 12 руки, що передують передпліччю. лених по такій формулі: Якщо ж перша точка Р1 належить плечу, то послідовність зчленувань містить тільки зчленування плеча і ключиці. Якщо перша точка Р1 належить Ui × ql ai = sin-1 кисті, то в русі беруть участь усі зчленування 12 Da руки, тобто послідовність зчленувань містить зап'ястя, лікоть, плече і ключицю. Зрозуміло, всі вищеописані дії повинні бути Таким чином, для даного зчленованого об'єкта виконані для всіх зчленувань 12а, 12b і 12с, що 10 послідовність зчленувань залежить від елеменутворюють дану послідовність зчленувань. та 11 зчленованого об'єкта 10, що містить першу Таким чином, використання унікального вектоточку Р1. r ра V витягу, вирахуваного по мінімальній відстані Зокрема, приклад, наведений на Фіг.6, демонабо глибині проникнення, дозволяє істотно вдосструє р ух обертання зчленування, що впливає на коналити процедуру запобігання зіткненням зчледане зчленування 12а, яке входить у послідовність нованого об'єкта 10 з елементами навколишнього зчленувань 12а, 12b і 12с. простору 13. Цей рух обертання зчленування, що впливає Даний винахід дозволяє значно скоротити кіна дане зчленування 12а, може бути визначений лькість розрахунків мінімальної відстані або глишляхом здійснення таких дій. бини проникнення, які вимагають дуже значних Визначають перший вектор V1l (називаний витрат часу на обчислення, порівняно до відомих надалі "першим локальним вектором"), що з'єднує методик обчислення градієнтів, не знижуючи точцентр даного зчленування 12а і початкову точку ності запобігання зіткненням зчленованого об'єкта r Р2 вектору V витягу. з елементами навколишнього простору. Аналогічним чином визначають другий локаНа Фіг.7А подана блок-схема, що ілюстр ує основні етапи моделювання переміщення зчленовальний вектор V2l , що з'єдн ує центр даного зчлеr ного об'єкта з запобіганням його зіткненням з еленування 12а і кінцеву точк у Р1 вектору V витягу. ментами навколишнього простору. Потім обчисляють називаний надалі "кутом На етапі S0 відбувається ініціалізація програr локального повороту" кут ql повороту, необхідного ми й визначення певних параметрів. Наприклад, ініціалізується лічильник тактових сигналів або для суміщення першого локального вектора V1l з r етапів обчислень моделювання. другим локальним вектором V2l . Кут ql локальноАналогічним чином на етапі S0 можуть бути го повороту може бути вирахуваний з використанвизначені елементарні зміни (кроки) зсуву полоням векторного добутку (називаного надалі "локаження (Dр), орієнтації (Dо) і зчленувань (Da). Нальним векторним добутком") першого локального приклад, різноманітні кроки можуть бути визначені залежно від характеристик зчленувань 12. Альтевектора V1l і другого локального вектора V2l по рнативно, може бути вибраний оптимальний потакій формулі: стійний крок для всіх зчленувань 12 протягом усієї траєкторії руху зчленованого об'єкта 10. r V1l ´ V2l На етапі S1 здійснюють обчислення елеменql = V1 × V 2l l тарного руху зчленованого об'єкта 10. На етапі S2 роблять перевірку на наявність зіr ткнення даного зчленованого об'єкта 10 з елеменЦей кут ql локального повороту розкладають тами навколишнього простору 13. Критерій зіткна один або декілька елементарних кутів qΙi повонення залежить від величини відстані взаємодії. роту зчленування, що відповідають одній або декіІншими словами, при використанні методу, зальком осям Ui , що визначають один або декілька снованого на мінімальній відстані, зіткнення можна ступенів свободи даного зчленування 12а зчленовважати таким, що сталося, якщо ця мінімальна ваного об'єкта 10. У даному прикладі дане зчленувідстань менша або дорівнює певній граничній відстані, яка може дорівнювати нулю, щоб забезвання 12а містить дві осі U1 і U2 . Один або декіпечити можливість переміщення зчленованого лька елементарних кутів qΙi повороту зчлен ування об'єкта 10 без зіткнень з елементами оточуючого можуть бути розраховані з використанням одного його простору 13. або декількох скалярних добутків локального векНа відміну від цього, при використанні методу, заснованого на глибині проникнення, зіткнення 15 85820 16 можна вважати таким, що сталося, якщо ця глибиДані (змінні) зчленованого об'єкта 10 і оточуюна більша або дорівнює певній граничній глибині чого його простору утворюють загальні дані 15, проникнення. Таким чином, залежно від вибору через які взаємодіють різноманітні чинники. цього граничного значення, можна, в одному варіАр хітектура багатофакторної системи може анті, забезпечити переміщення зчленованого об'бути здійснена у формі декількох етапів або рівнів, єкта 10 без зіткнень з елементами оточуючого йоу вигляді піраміди, так що основні чинники роблять го простору 13 або, в іншому варіанті, забезпечити свій внесок у дії чинників більш високого рівня. переміщення зчленованого об'єкта 10 з обмежеВ даному прикладі багатофакторна система 50 ними й контрольованими зіткненнями з елементамістить перший рівень 51 і другій рівень 52. ми оточуючого його простору 13. У цьому останПерший рівень 51 ілюструє вплив (або глобаньому випадку можливе моделювання певної льний внесок у нього) на зчленований об'єкт 10 і пружності при зіткненні зчленованого об'єкта 10 з містить внесок першого глобального чинника 20 і елементами навколишнього простору 13. внесок другого глобального чинника 30, що вплиЯкщо відповідно до критерію етапу S2 зіткненвають на зчленований об'єкт 10 через загальні ня відсутнє, на етапі S3 переміщення зчленованодані 15. го об'єкта 10, вирахуване на етапі S1, відображаПерший· глобальний чинник 20 впливає на поють, наприклад, на екрані 7 комп'ютера 1, після ложення й орієнтацію зчленованого об'єкта 10, а чого відбувається повернення до того ж етапу S1 другий глобальний чинник 30 впливає на внутрішні для обчислення наступного елементарного переступені свободи зчленування 12 зчленованого міщення. об'єкта 10. Таким чином, дії з вибору першої і другої тоДругий рівень 52 ілюструє різноманітні внески, чок, визначення вектора витягу й відведення зчлещо надходять від чинників різноманітних типів, що нованого об'єкта 10 від елементів навколишнього породжують внески першого й другого глобальних простору 13 на етапі S3 не роблять. чинників 20 і 30 і взаємодіють через загальні дані У той же час, за наявності зіткнення на етапі 15. S4 роблять скасування елементарного переміТаким чином, переміщення зчленованого об'щення, вирахуваного на етапі S1. єкта 10 може бути здійснене за допомогою чинниПотім, на етапі S5, розраховують рух, визнака тяжіння, що впливає на глобальне положення чений на основі унікального вектора витягу й що і/або глобальну орієнтацію, і/або ступені свободи впливає на глобальне положення і/або глобальну зчленованого об'єкта. орієнтацію, і/або ступені свободи зчленованого Крім того, відведення даного зчленованого об'єкта для відведення зчленованого об'єкта 10 об'єкта 10 від елементів оточуючого його простору від елементів оточуючого його простору 13, після може бути здійснене за допомогою чинника ковчого відбувається повернення до етапу S1. зання, що впливає на глобальне положення і/або На Фіг.7В зображений варіант Фіг.7А, застосоглобальну орієнтацію, і/або сукупність ступенів вний винятково до методу обчислень з викориссвободи зчленованого об'єкта. танням глибини проникнення. Так, другий рівень 52 багатофакторної систеБлок-схема, подана на цьому кресленні, збігами 50 може містити чинник 21 відштовхуючого ється з блок-схемою Фіг.7А, але не містить етапу ковзання, що впливає на глобальне положення S4. і/або глобальну орієнтацію зчленованого об'єкта Таким чином, при виявленні на етапі S2 зітк10, чинник 22 глобального тяжіння, що впливає на нення відбувається негайний перехід до етапу S5 глобальне положення і/або на глобальну орієнтавідведення даного об'єкта 10 від елементів оточуцію зчленованого об'єкта 10, чинник 31 кінематичючого його простору 13 без скасування останнього ного ковзання, що впливає на внутрішні ступені елементарного переміщення, що забезпечує можсвободи зчленувань 12 зчленованого об'єкта 10, і ливість невеликого взаємного проникнення об'єкта чинник 32 кінематичного тяжіння, що впливає на 10 і елементів оточуючого його простору 13. внутрішні ступені свободи зчленування 12 зчленоПереміщення віртуального зчленованого об'ваного об'єкта. єкта 10 у віртуальному просторі може бути здійсКрім того, зчленований об'єкт 10 може пересунене за допомогою "багатофакторної" системи або ватися оператором, що впливає на положення будь-якої іншої відомої системи. і/або орієнтацію, і/або ступені свободи цього зчлеЯк украй схематично показано на Фіг.8, для нованого об'єкта, в режимі реального часу. моделювання переміщення зчленованого об'єкта Так, другий рівень 52 багатофакторної систе10 може бути використана архітектура багатофакми 50 може також містити глобальний керуючий торної системи 50. Ця багатофакторна система 50 чинник 23, що впливає на глобальне положення утворена сукупністю активних елементів (чинників) і/або глобальну орієнтацію зчленованого об'єкта 20, 21, 22, 23, 30, 31, 32, 33, 34 і 35, що впливають 10, і внутрішній керуючий чинник 33, що впливає на пасивні об'єкти (елементи 11 і зчленування 12), на внутрішні ступені свободи зчленувань 12 зчлещо утворюють зчленований об'єкт 10, відповідно нованого об'єкта 10. до оточуючого його простору. 17 85820 18 19 Комп’ютерна в ерстка О. Гапоненко 85820 Підписне 20 Тираж 28 прим. Міністерство осв іт и і науки України Держав ний департамент інтелектуальної в ласності, вул. Урицького, 45, м. Київ , МСП, 03680, Україна ДП “Український інститут промислов ої в ласності”, вул. Глазунова, 1, м. Київ – 42, 01601

Дивитися

Додаткова інформація

Назва патенту англійською

Displacement of virtual articulated object in virtual space with prevention of collision of articulated object with elements of environment

Автори англійською

Maille Bruno, Ramstain Edouard, Chedmail Patrick

Назва патенту російською

Перемещение виртуального сочлененного объекта в виртуальному пространстве с предотвращением столкновения сочлененного объекта с элементами окружающего пространства

Автори російською

Майе Брюно, Рамстаин Эдуар, Шедмай Патрик

МПК / Мітки

МПК: G06T 17/40, G06T 15/70

Мітки: зіткненню, запобіганням, просторі, віртуальному, віртуального, навколишнього, простору, переміщення, елементами, зчленованого, об'єкта

Код посилання

<a href="https://ua.patents.su/10-85820-peremishhennya-virtualnogo-zchlenovanogo-obehkta-u-virtualnomu-prostori-iz-zapobigannyam-zitknennyu-zchlenovanogo-obehkta-z-elementami-navkolishnogo-prostoru.html" target="_blank" rel="follow" title="База патентів України">Переміщення віртуального зчленованого об’єкта у віртуальному просторі із запобіганням зіткненню зчленованого об’єкта з елементами навколишнього простору</a>

Подібні патенти