1. Limited time only! Sign up for a free 30min personal tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Rotational Kinetic Energy of Body in another body reference frame

  1. May 6, 2013 #1
    I have two rigid bodies floating in space that are kinematically constrained by a joint (think of a 2 dof link mechanism floating in space).

    I have a body fixed reference frame on each rigid body plus the global space-fixed reference frame. The first rigid body is in the space-fixed reference frame), so its rotational kinetic energy is trivial. However, the second rigid body referenced via the first rigid body's body fixed reference frame.

    I'm unsure how to transform the second rigid body's rotation into the global space-fixed frame, which will allow me to get the rotational kinetic energy of the second body.

    So basically I have the first rigid body described by ##\vec{r}_{1,0}## and ##\vec{\theta}_{1,0}## where ##1,0## is the 1st body fixed frame relative the space-fixed frame. And for the second rigid body, ##\vec{r}_{2,1}## and ##\vec{\theta}_{2,1}## where ##2,1## is the 2nd body fixed frame relative 1st body fixed frame.

    I want to find ##\vec{\theta}_{2,0}##. I imagine my moment of inertia tensor will change also? Right now all my body fixed frames are lined up with the principle moments (i.e. moment of inertia tensors are diagonal).
  2. jcsd
  3. May 7, 2013 #2

    Simon Bridge

    User Avatar
    Science Advisor
    Homework Helper

    You have two bodies stationary with respect to each other in an inertial reference frame and you want to describe the properties of one in terms of a rotating (non-inertial) frame attached to the other one? i.e. consider a body rotating in a rotating reference frame?

    In that frame, the body is rotating about the origin and also spinning about it's own axis.
    The energy stored in it's self rotation should follow normally.
    So what is puzzling you?
  4. May 7, 2013 #3
    Sorry, I was not clear enough about the system. The two bodies are not stationary wrt each other. They are connected by a 2 dof joint (so I have two torque inputs on the joint). Therefore, to formulate the KE of the system, I need to know the KE of each body. So, yes, I need to consider the 2nd body rotating in a rotating reference frame.

    Does that make sense? I'm sure this is done all the time in robotics, but I can't seem to find anything to help me out. Everything I've learned and read about it just describing a single rotating/translating frame in a fixed frame, i.e. a single rigid body.

    Thanks for the response!
  5. May 7, 2013 #4

    Simon Bridge

    User Avatar
    Science Advisor
    Homework Helper

    Oh right - for some reason I blanked out the 2dof arm part.
    Those things can move in a wide variety of ways so I guess you'll have to draw a picture to show what you are facing more clearly.

    It reads like you need to do a total kinetic energy calculation for a rigid object moving and spinning in a rotating reference frame, but there is some sort of complication that is throwing you out.

    All those single rotating/translating frame things are the tool you need to make sense of this thing though.
    You do need to be careful about your description ... reduce it to basics: do you have a description of the motion of the body you are doing calculations for in some specified reference frame?

    The two main approaches are
    1. transform to an inertial reference frame, do the calculation, transform back;
    2. divide the body into small volumes dV, work out the KE for each volume, add them up.
  6. May 7, 2013 #5
    This is exactly what I need to do. The complication is in figuring out the angular velocity of the body in the inertial frame (fixed frame). I know the angular velocity of the body wrt the rotating frame, but its transforming it from the rotating frame to the inertial frame which has me stuck. Then I wonder if I have to transform my moment of inertia tensor, too.

    Anyways, I'll take another look at the single rotating/translating things.

    Btw, this isn't a homework problem. I'm trying to formulate the equations of motion to look at the behavior of the system with various torque inputs. Basically, its to model two spacecraft connected by a robot arm. I've done the problem in 2D which was pretty trivial, but moving to 3D has given me more problems then I was expecting.

    Thanks again!
  7. May 7, 2013 #6

    Simon Bridge

    User Avatar
    Science Advisor
    Homework Helper

    You can transform from fixed to rotating frame?
    You have the description in the rotating frame?
    You need the description in the fixed frame?
    Do the inverse transformation.

    You should be clear whether you mean the angular velocity of the center of mass or the angular velocity of the body's spin about it's own axis.

    The spin may speed up and slow down with time when viewed from some arbitrary reference frame.
    You can find out the spin about the axis by subtracting the motion of the axis.
  8. May 7, 2013 #7
    Sorry about that. I need to find the angular velocity of the body's spin about it's own body fixed frame. This will allow me to find the rotational energy of that body. Or, is that not the way to go about it? I don't care about the angular velocity of the center of mass, only the position of the center of mass, which is easy to find in the fixed frame.

    I'll have to think some more about the inverse transformation...
  9. May 7, 2013 #8
    Attached is a diagram of the system if it helps to clear things up. The degrees of freedom are: the position (3 dof) and orientation (3 dof) of body 1, and the joint angles (2 dof). The position and orientation of the 2nd body are kinematically related to the 1st body and the joint angle.

    Attached Files:

    • Scan.jpg
      File size:
      15.1 KB
  10. May 7, 2013 #9

    Simon Bridge

    User Avatar
    Science Advisor
    Homework Helper

    Hmmm ... a 2dof arm only has 2D motion, but I take it the spin axis can be anything and the rotation axis of the rotating coordinates can be anything too?

    Focussing just on the spinning object ... and the energy stored in its spin.
    You only care about the speed of its rotation about its spin axis, and its moment of inertia about it's spin axis.

    This is the sort of thing that gets done in astrophysics all the time - celestial bodies are usually spinning, and the Earth is spinning and going in a circle. You have to be able to figure out how fast the other bodies are spinning from measurements taken in a rotating reference frame.

    I cannot tell what information you have to do the calculation with or how it is measured. Your diagram just shows sets of coordinates - it does not show the motion expected or what you are trying to do. i.e. Normally, when we have a spinning object on the end of a robot arm, we control the angular velocity by telling the "wrist" to rotate at a particular rpm.

    I think the first thing I want to do with that diagram is simplify it ... attach the origin of the inertial frame to the "shoulder" of the 2dof link - at the com of box 1 (which I'm guessing is the observer - the owner of the rotating frame of interest?). Orient it so the arm moves in the x-y plane. You can get back to the picture you drew by a fixed rotation and translation, in the inertial frame, without affecting the math. The energy should not depend on absolute coordinates anyway.

    So we have:
    box 1 is at point O,
    box 2 is at point P,
    the elbow of the arm is at point Q.
    the rotating frame is the "B1 frame" - origin at O, rotating with box1.
    the inertial frame is the "dof frame" - origin at O, not rotating, aligned with the arm.

    That should make it easier to think about.

    Specify the axis of rotation of box 1 by a vector and find the rotation matrix in the normal way.
    This will allow you to transform between the dof and B1 frames. You know how to do this right?

    From there you can specify the spin axis of box 2 in the dof frame, and transform that into the B1 frame. (I am being careful to call the rotation of box 2 "spin", reserving the word "rotation" for the entire coordinate system and box 1.)

    The spin of box2 about that axis is the same no matter what the frame - but, in the B1 frame, the axis vector may tilt and wobble.
  11. May 7, 2013 #10
    Thanks for going through all of that! This is getting way more intense than I was expecting, so I will provide more details of the original problem and what exactly I am modeling.

    The two rigid bodies (box 1 and box 2) are connected by a spherical joint that has two degrees of freedom (think of a gun turret - azimuth and elevation). The two angles for the spherical joint determine the direction of the vector from the joint to the box 2 and also is aligned with the z axis of box 2's frame.

    The two bodies represent spacecrafts that are connected by this joint, and they are free to float in space. That is why I left the inertia frame away from the other body frames, as if the inertia frame is the observer on Earth. Is this where I went wrong? I understand how you moved the origin of box 1's frame to the origin of the inertial frame, but then that eliminates 3 of my dofs (the position of box 1).

    What I did was an XYZ rotation from the inertia frame to box 1's frame, then another XYZ rotation from box 1's frame to box 2's frame (using the kinematic constraints for the joint and arm length).

    I have more to think about before I respond more! Thanks again!
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook