Anthropomorphic Dummy Movements in 3D Space

  • Context: Graduate 
  • Thread starter Thread starter PrinceAlee
  • Start date Start date
  • Tags Tags
    3d Space
Click For Summary

Discussion Overview

The discussion revolves around automating the movement of a human dummy in 3D space using Python scripting, focusing on the efficient rotation of a spherical joint (the hip) represented by joint angles. Participants explore various methods for achieving this 3D rotation, including Denavit-Hartenberg equations and Euler-Rodrigues rotation formulas.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested

Main Points Raised

  • One participant, Prince, seeks help in automating the movement of a human dummy using joint angles and is considering different mathematical approaches for 3D rotation.
  • Another participant questions the meaning of "joint angles" and asks for clarification on how the program's output is interpreted by the hardware, suggesting a need for understanding the mechanics of the movement.
  • Prince clarifies that the task involves virtually rotating a spherical joint with three degrees of freedom (DOFs) and expresses a desire for a more efficient method to achieve the target position in one motion.
  • Further inquiries are made about the definition of the "target coordinate" and the specific algorithm that would facilitate the virtual automation of the joint's motion.
  • A participant suggests that the problem may involve obtaining a 3D rotation from a set of Euler angles and introduces the concept of spherical linear interpolation (Slerp) and quaternions as potential solutions for representing 3D rotations.

Areas of Agreement / Disagreement

Participants express differing views on the best approach to achieve the desired 3D rotation, with no consensus on a specific method or algorithm. Questions remain about the definitions and mechanics involved in the proposed solutions.

Contextual Notes

Participants highlight the need for clarity on the inputs and outputs of the automation process, as well as the mathematical definitions required for the task. There is an emphasis on the efficiency of motion and the representation of rotations in 3D space.

PrinceAlee
Messages
2
Reaction score
0
Hi Guys,

I have been assigned a task to automate the movement of a Human Body (We are using a Human Dummy) using Python Scripting. The Input for this tasks are the Joint Angles (Perhaps similar to a Robotic Joint). We use the terminology of R,S and T to represent Rotation around the Three Axes.To move the Rigid Body under consideration we use a theta vs Time curve.
Now I need to move say the Leg Pivoted at the Acetabulum/Hip in RST Direction Simultaneously. I am looking for the most efficient method to achieve this 3D rotation.
Some say Denavit-Hartenberg Equations and others say Euler Rodriguez Rotation Formula.
I find both a tad cumbersome to understand.

Any Good Samaritan for help??

Cheers,
Prince
 
Physics news on Phys.org
PrinceAlee said:
. The Input for this tasks are the Joint Angles

What does that mean? Are you saying that you are given 3 joint angles and your task is to move the leg from its current position until it reaches the position described by those joint angles?

Now I need to move say the Leg Pivoted at the Acetabulum/Hip in RST Direction Simultaneously. I am looking for the most efficient method to achieve this 3D rotation.

What is the output of your program? You need to explain how the program output is interpreted by the hardware that moves the leg. For example, suppose the leg is rotated by 3 stepper motors. If you output instructions for how much each motor is to step, do the motors step simultaneously, or does one motor complete its steps before another one begins?
 
Hi Tashi!
Thanks for showing interest.

I have been given one joint. This spherical joint has three rotational DOFs. (Angle R,S,T for X,Y,Z respectively)
I need to virtually rotate this joint. There is no hardware as such. Just a virtual automated motion of the Joint.
As you said, we can very comfortably achieve it by doing step by step ie: achieve R then achieve S then achieve T.
However, we need to make this motion more efficient. And nail the target in one motion.
So what i was thinking is i need to find a vector that points towards the final target coordinate (a vector rotated in 3D space) and rotate the Rigid Body (Knee in my case) along the space defined by that vector?

Imagine rotation your leg pivoted at acetabulum (a spherical joint) trying to reach a point by using three rotation DOFs!
 
You still haven't defined a mathematical problem. What is the given information? What do you mean by "target coordinate"?

There is no hardware as such. Just a virtual automated motion of the Joint.
The virtual automation must work by using some specific algorithm. What is the algorithm? - or at least, what are the inputs to the algorithm?

As you said, we can very comfortably achieve it by doing step by step ie: achieve R then achieve S then achieve T.
However, we need to make this motion more efficient. And nail the target in one motion.

How do you define "one motion"? Is "one motion" specified by 3 numbers that give a constant angular velocity for each angle?
 
I think you're trying to get a 3D rotation from a set of Euler angles. You may be looking for http://en.wikipedia.org/wiki/Slerp. Slerp gives you a geodesic on the 3D rotation manifold (roughly a great arc on a sphere in 4D). I figure, it'll be easier if you "saw" 3D rotations as unit quaternions. Quaternions provide a neat algebraic representation of 3D rotations. The wiki page referred has a number of useful links.
 

Similar threads

  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 7 ·
Replies
7
Views
2K
  • · Replies 4 ·
Replies
4
Views
3K
  • · Replies 71 ·
3
Replies
71
Views
17K
  • · Replies 31 ·
2
Replies
31
Views
5K
  • · Replies 1 ·
Replies
1
Views
3K
Replies
10
Views
5K
  • · Replies 3 ·
Replies
3
Views
4K
  • · Replies 3 ·
Replies
3
Views
3K