Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Anthropomorphic Dummy Movements in 3D Space

  1. Jan 22, 2014 #1
    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??

  2. jcsd
  3. Jan 24, 2014 #2

    Stephen Tashi

    User Avatar
    Science Advisor

    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?

    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?
  4. Jan 26, 2014 #3
    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!!
  5. Jan 26, 2014 #4

    Stephen Tashi

    User Avatar
    Science Advisor

    You still haven't defined a mathematical problem. What is the given information? What do you mean by "target coordinate"?

    The virtual automation must work by using some specific algorithm. What is the algorithm? - or at least, what are the inputs to the algorithm?

    How do you define "one motion"? Is "one motion" specified by 3 numbers that give a constant angular velocity for each angle?
  6. Jan 27, 2014 #5
    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.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook