520 likes | 692 Views
Virtual Human. ( review ). Plan. Need Human motion : influential factors Proof Control scheme (functional architecture) Pb of stability Details Test cases relevance Reusability Progress. uses. Need. Autonomy (nb of ddl automatically driven). - standard devices
E N D
Virtual Human ( review )
Plan • Need • Human motion : influential factors • Proof • Control scheme (functional architecture) • Pb of stability • Details • Test cases relevance • Reusability • Progress
uses Need Autonomy (nb of ddl automatically driven) - standard devices mouse, trackball… - PDM auto check Autonomous manikin Nb ddl ctrl > nb ddl cde : - automate : nb ddl cde automation - take time : drive ddl one after another [Ren04] - persuasive - heavy infrastructure Interactive manikin VH in mock-up - not relevant Other techniques
Need : [Ren04] • visibility • reaching • retarget control • balance control • use tools (grasping) • accessibility • collision • interaction (env.) • strength analysis • energy expenditure uses Need Autonomy (nb of ddl automatically driven) - standard devices mouse, trackball… - PDM auto check Test cases : Autonomous manikin [Ren04] Virtual cockpit - persuasive - heavy infrastructure Interactive manikin VH in mock-up - not relevant Other techniques Helicopter maintenance
Plan • Need • Human motion : influential factors • Proof • Control scheme (functional architecture) • Pb of stability • Details • Test cases relevance • Reusability • Progress
Human motion : influential factors • Motion sources : • reaching goals : • effectors control • external (cartesian) potentials Rem : concurrent tasks tasks priority (decoupling) • physical, biological constraints • contact (collision / interaction) • joint limits • balance unilateral constraints • humans specificity • attitude • energy expenditure control • internal (articular) potentials
Motion sources : Human motion : influential factors • reaching goals : • effectors control • external (cartesian) potentials Rem : concurrent tasks tasks priority (decoupling) • physical, biological constraints • contact (collision / interaction) • joint limits • balance unilateral constraints • humans specificity • attitude • energy expenditure control • internal (articular) potentials
Decoupling : why? Second step First step - effector’s position controlled - internal potential optimized without decoupling - effector’s position controlled - internal potential not considered yet
Motion sources : Human motion : influential factors • reaching goals : • effectors control • external (cartesian) potentials Rem : concurrent tasks tasks priority (decoupling) • physical, biological constraints • contact (collision / interaction) • joint limits • balance unilateral constraints • humans specificity • attitude • energy expenditure control • internal (articular) potentials
Unilateral constraints : why? joint limits : contact : balance : ex : retargeting of a giant’s mvt to a baby’ skeleton
Motion sources : Human motion : influential factors • reaching goals : • effectors control • external (cartesian) potentials Rem : concurrent tasks tasks priority (decoupling) • physical, biological constraints • contact (collision / interaction) • joint limits • balance unilateral constraints • humans specificity • attitude • energy expenditure control • internal (articular) potentials
Attitude : why? 3DSmax 7’s IK : no "attitude" management
Plan • Need • Human motion : influential factors • Proof • Control scheme (functional architecture) • Pb of stability • Details • Test cases relevance • Reusability • Progress
The system to be controlled the lowest control-level is done through actuated joints The manikin is seen as deformable skin which is controlled thanks to a skeleton. Skeleton: polyarticulated arborescent kinematical chain The skeleton is given a geometrical representation to allow collision tests with environment
Global control scheme 6D targets positions and velocities avatar joint positions rigid bodies positions Control Simulation real world actor’s movements being observed through motion capture avatar joint torques virtual human being animated in real time
Balance : • enforce mvt feasibility • Method : unilateral constraint (LCP) Attitude : • realism • Method :potential functions optimisation Projections : • help (virtual guides) • first step towards autonomy Detailed control scheme (functional view) problems solved jointly attitude torque’s contribution API : integrator torque contribution at each control point manikin’s articular configuration compensation torque manikin’ state API : ulc solver Decoupling : Robotic framework : - n targets priority Method :dynamics Out (visu 3D) Interaction forces dynamics projected torque contributions In GVM (CEA) : simple control, contact, limits… Motion capture passively projected 6D marker pos 1st order dynamics 6D pos Collision detection (searches Local Minimal Distance) : LMD++ (CEA) Legend : : information flow : I \ O ports
passivity : integration scheme passivity : each control block Key points : stability by passivity Input device: Mocap Haptic Etc. + Controller >0 - RT simulation >0 • Both blocks are discrete and non linear • The controller & the Real Time simulation should be passive to ensure stability Passivity:control paradigm ensuring stability. Useful in complex systems, because it allows to decouple the passivity (thus stability) of the whole system into the passivity of each of the components of the system
Detailed control scheme (functional view) problems solved jointly Attitude : Balance : • realism • Method :potential functions optimisation • enforce mvt feasibility • Method : unilateral constraint (LCP) attitude torque’s contribution API : integrator torque contribution at each control point manikin’s articular configuration compensation torque manikin’ state API : ulc solver Decoupling : Robotic framework : - n targets priority Method :dynamics Out (visu 3D) Interaction forces dynamics projected torque contributions In Projections : GVM (CEA) : simple control, contact, limits… Motion capture • help (virtual guides) • first step towards autonomy passively projected 6D marker pos 1st order dynamics 6D pos Collision detection (searches Local Minimal Distance) : LMD++ (CEA) Legend : : information flow : I \ O ports
First order dynamics & control (1/2) • usual 2nd order dynamics: • passage en dynamique du 1er ordre • mass is neglected • joints are separated into position controlled joints, and force controlled joints • integration is done through additional joint damping couples articulaires NOTE : First order dynamics and external control are handled by GVM (product developped by CEA\LIST)
First order dynamics & control (1/2) • PD cartesian control • has a component used for internal control, and a component which is a PD corrector to achieve external control • developping this expression we obtain the evolution equation in joint space • in previous equation, the inverse can be calculated under given conditions (not restrictive) system’s jacobien control gains NOTE : First order dynamics and external control are handled by GVM (product developped by CEA\LIST)
Balance : • enforce mvt feasibility • Method : unilateral constraint (LCP) Attitude : • realism • Method :potential functions optimisation Decoupling : - n targets priority Method :dynamics Projections : • help (virtual guides) • first step towards autonomy Detailed control scheme (functional view) problems solved jointly attitude torque’s contribution API : integrator torque contribution at each control point manikin’s articular configuration compensation torque manikin’ state API : ulc solver Robotic framework : Out (visu 3D) Interaction forces dynamics projected torque contributions In GVM (CEA) : simple control, contact, limits… Motion capture passively projected 6D marker pos 1st order dynamics 6D pos Collision detection (searches Local Minimal Distance) : LMD++ (CEA) Legend : : information flow : I \ O ports
Decoupling (prioritization) (1/3) • State of the art : • kinematics : multi-tasks • dynamics : • 2 tasks passive • multi-tasks non passive • Innovation : • 1st order dynamics multi-tasks passive decoupling (GVM) • 2nd order dynamics multi-tasks passive decoupling • Tested approaches : • multi-tasks kinematics : (OK), no interaction dismissed • Done, to do : • internal potential ok, external potentials ? • implement algorithm, test
Decoupling (prioritization) (2/3) • Problem • Mathematical view (without prioritization) task 2 task 2 task 1 task 1 with prioritization: in case of target conflicts, targets priorities are enforced without prioritization: in case of target conflicts no target is reached influence (torque) of task 2 can disturb task 1
Decoupling (prioritization) (3/3) • Solution • project task 2’s influence such that it does not disturb higher priority tasks • this control can be extended to n tasks projection to avoid disturbing task 1
Attitude : Balance : • realism • Method :potential functions optimisation • enforce mvt feasibility • Method : unilateral constraint (LCP) Projections : • help (virtual guides) • first step towards autonomy Control scheme (functional p.o.v.) problems solved jointly attitude torque’s contribution API : integrator torque contribution at each control point manikin’s articular configuration compensation torque manikin’ state API : ulc solver Decoupling : Robotic framework : - n targets priority Method :dynamics Out (visu 3D) Interaction forces dynamics projected torque contributions In GVM (CEA) : simple control, contact, limits… Motion capture passively projected 6D marker pos 1st order dynamics 6D pos Collision detection (searches Local Minimal Distance) : LMD++ (CEA) Legend : : information flow : I \ O ports
Attitude (1/3) • Principal : • optimize potential function caracterizing a "human attitude" • State of the art : • potential functions • empirical, not generic… • Innovation : • ? • Done, to do : • implement, and test • Test : • ideally : compare positions of limbs (VH / n performers) • difficult, interesting ? : empirically (human brain outstanding!)
Attitude (2/3) • Problem • because of its redundant nature,a virtual human is still under-constrained after solving for the cartesian constraints • thus several configurations allow to enforce cartesian constraints • solving for the internal problem (or attitude) allows to choose the configuration that best represent a human posture • Mathematical view • solving for cartesian control (dimensional problem) : • the relation J is not invertible : the system has an infinite number of solutions (such systems are called redundant) joint parameters effector’s position q = J x
Attitude (3/3) • Solution • find one solution q1 to the cartesian control (thanks to the moore-penrose inverse) : • add constraints to the systems (other tasks), to fully constrain the problem total joint parameters increment at current time-step internal tasks (attitude) contribution (must not disturb cartesian control) cartesian tasks contribution
Balance : • enforce mvt feasibility • Method : unilateral constraint (LCP) Attitude : • realism • Method :potential functions optimisation Projections : • help (virtual guides) • first step towards autonomy Control scheme (functional p.o.v.) problems solved jointly attitude torque’s contribution API : integrator torque contribution at each control point manikin’s articular configuration compensation torque manikin’ state API : ulc solver Decoupling : Robotic framework : - n targets priority Method :dynamics Out (visu 3D) Interaction forces dynamics projected torque contributions In GVM (CEA) : simple control, contact, limits… Motion capture passively projected 6D marker pos 1st order dynamics 6D pos Collision detection (searches Local Minimal Distance) : LMD++ (CEA) Legend : : information flow : I \ O ports
COM Balance (1/3) • State of the art : • static equilibrium of a posture caracterized • critical for test cases • Innovation : • new approach (well posed) • suits the global VH control scheme • Numerical methods : • unilateral constraint thanks to a LCP solver (Lemke) • Done, to do : • being implemented, and tested
real "giant" actor virtual "dwarf" avatar targets constrained (desired position specified by actor) Balance (2/3) • Problem • Mathematical view when movements of a "giant" actor are retargeted on a "dwarf" avatar, the dwarf may not be balanced anymore this leads to unfeasible movements of the avatar lever arm of contact k COM’s position Interpretation: the projection of the COM on the ground must lie in the "support polygon" vertical vector force at contact k
Balance (3/3) • Solution • Limitation • the mathematical view shown here is rather restrictive (only handles a sub-set of the problem) : contacts must lie on the same plane Enforce elliptical approximation of the support polygon projection of the COM on the ground (which states that the projection of the COM on the ground must lie in the "support polygon") while solving the evolution equation. actual support polygon both feet approximation of the support polygon by an ellipse NOTE : we solved the problem on an elliptical approximation of the support polygon, it could be easily extended to other shapes…
Balance : • enforce mvt feasibility • Method : unilateral constraint (LCP) Attitude : • realism • Method :potential functions optimisation Projections : • help (virtual guides) • first step towards autonomy Control scheme (functional p.o.v.) problems solved jointly attitude torque’s contribution API : integrator torque contribution at each control point manikin’s articular configuration compensation torque manikin’ state API : ulc solver Decoupling : Robotic framework : - n targets priority Method :dynamics Out (visu 3D) Interaction forces dynamics projected torque contributions In GVM (CEA) : simple control, contact, limits… Motion capture passively projected 6D marker pos 1st order dynamics 6D pos Collision detection (searches Local Minimal Distance) : LMD++ (CEA) Legend : : information flow : I \ O ports
Projections : semi-autonomous mode (1/3) • Principal : • guide the manikin through projections • State of the art : • matrix projections «as is» : passivity • intrinsically passive projections through virtual mechanisms • Innovation : • new to virtual humans control • Done, to do : • implemented, tested, being published • Test : • Virtual human performing a precision task
Projections : semi-autonomous mode (2/3) • Problem • because of the lack of haptic sensations, it can be difficult for the the immersed actor to achieve some movements • the most intuitive solution to implement these guides is to project targets’ positions : but projections are unsafe as for passivity • Solution • build passive projections thanks to mechanical analogies also called virtual mechanisms (real world mechanisms being always passive, we can emulate them)
future hole position target, and task space control wall to be drilled control point virtual mechanism: guides movements constraint coupling virtual human holding a drill Projections : semi-autonomous mode (3/3) • Solution virtual mechanism (in red) helping the manikin aligning a drill on the futur hole’s position
Plan • Need • Human motion : influential factors • Proof • Control scheme (functional architecture) • Pb of stability • Details • Test cases relevance • Reusability • Progress
Attitude : • realism • Method :potential functions optimisation Test cases relevance (1 / 2) attitude torque’s contribution manikin’s articular configuration Decoupling : - n targets priority Method :dynamics Highlighted points : - multi-targets decoupling - attitude Virtual cockpit test
Balance : • enforce mvt feasibility • Method : unilateral constraint (LCP) Attitude : • realism • Method :potential functions optimisation Test cases relevance (2 / 2) attitude torque’s contribution manikin’s articular configuration Decoupling : Highlighted points : - multi-targets decoupling - attitude - balance control - n targets priority Method :dynamics Helicopter (ladder climbing) test
Plan • Need • Human motion : influential factors • Proof • Control scheme (functional architecture) • Pb of stability • Details • Test cases relevance • Reusability • Progress
test cases work Code (functions mapping) Methods Architecture Specifications (thesis) Reusability work direction driven by test cases useful work…
Plan • Need • Human motion : influential factors • Proof • Control scheme (functional architecture) • Pb of stability • Details • Test cases relevance • Reusability • Progress
Progress report Today took for granted to be done publication Virtual Concept (fin mars 05) Interactive manikin : publication IROS (début février 05) Decoupling : publication SCA (mi avril 05) Balance : publication SCSC (fin février 05) Attitude : publication Pacific Graphics (fin avril 05) Test cases : trainee Thesis editing : avec IRCCyN début mai 05: Démonstrateurs niveau indus. pour Bourget? avec IRCCyN fin juin 05: préparation rédaction thèse Reviews : Legend : : implementation : tests : theory : publication