# IdeaShuttle Fleet recompile for Orbiter 2016

#### gattispilot

I just ran the SSu no sure what they are calling reference points.
And no sure how to control the rms in SSu?

I ran the candian arm in the ISS ato z. But see the difference in the reference. Seems to move the same>?

#### Donamy

Donator
Beta Tester
With the SSRMS, the reference changes from the attached EE or the free EE.

#### gattispilot

Oh. So there are 2 ee. But on shuttle just 1 ee. But what is the reason to switch

#### Donamy

Donator
Beta Tester
No, one is a base. You have more precise control for moving things around the station. Or shuttle bay.

#### gattispilot

Sorry. You said the SSu can switch different Reference points?

So does it switch the point of the camera?

Been working on other projects. But I will take a look at the attachment issue.

#### DaveS

##### Space Shuttle Ultra Project co-developer
Donator
Beta Tester
Sorry. You said the SSu can switch different Reference points?
Yes. This is done by moving the Mode switch on A8U between either ORB UNL or END EFF. There's a third mode implemented, SINGLE/DIRECT. This mode drives one joint at a time which can be selected with the JOINT rotary switch on A8L.

So does it switch the point of the camera?
No. The SRMS has two cameras, one fixed on the end effector and one mounted on a standard pan/tilt unit on the elbow.

Last edited:

#### gattispilot

Thanks. I will look at the code for SSU then. Still don't see what it does though

Code:
void RMSSystem::Translate(const VECTOR3 &dPos, VECTOR3& newPos)
{
if(RMSMode[5].IsSet()) { // END EFF
// Reference Frame:
// X: in direction of EE Z: opposite to camera direction Y: completes RH frame
VECTOR3 y_axis = crossp(arm_ik_rot, arm_ik_dir);
// create rotation matrix to convert vector from EE frame to Orbiter body frame
MATRIX3 EERotMatrix = _M(arm_ik_dir.x, y_axis.x, arm_ik_rot.x,
arm_ik_dir.y, y_axis.y, arm_ik_rot.y,
arm_ik_dir.z, y_axis.z, arm_ik_rot.z);
// matrix to convert vector from EE frame to IK frame
MATRIX3 IKRotMatrix = mul(EERotMatrix, Transpose(GetRotationMatrix(_V(1, 0, 0), RMS_Z_AXIS_ANGLE)));
newPos = arm_ik_pos+mul(IKRotMatrix, dPos);
}
else if(RMSMode[6].IsSet()) { // ORB LD
//MoveEE(arm_ee_pos+RotateVectorX(dPos, -RMS_ROLLOUT_ANGLE), arm_ee_dir, arm_ee_rot);
newPos = arm_ik_pos+RotateVectorX(dPos, RMS_ROLLOUT_ANGLE);
}
}

#### DaveS

##### Space Shuttle Ultra Project co-developer
Donator
Beta Tester
And no sure how to control the rms in SSu?
First power up the aft flight station hand controllers by taking the FLT CNTLR PWR switch on A6U to ON. Then press Ctrl-A to switch over from the RCS hand controllers to the RMS hand controllers. Then you just use the NumPad controls as if you were flying the orbiter.

#### gattispilot

So by switching reference points you control the arm differently.

ORB UNL
. Orbiter unloaded mode uses the
unloaded POR and defines the HC inputs to
coincide with the desired arm trajectory as
viewed out the aft windows. For example, to
translate the arm to the left as you are looking
out the aft window (toward the starboard side
of the vehicle), the THC would be deflected to
the left. To move the arm out of the payload
bay (up), the THC would be deflected up. To
bring the arm toward you, the THC would be
pulled out. RHC inputs are similar. To pitch
the arm or payload up with respect to you as
you are looking out the aft window, the RHC
would be tilted back toward you. To yaw the
arm/payload as you are viewing it, the RHC
would be twisted left or right about its long
axis. To roll with respect to your view, the RHC
would be deflected left and right.

and in EE mode.
END EFF
. End effector mode allows the HC
inputs to reflect motion desired when viewed
through the end effector camera. The sense the
operator has is that he or she is “sitting” on the
end of the end effector. When the arm is
aligned parallel to the longeron, and the wrist
joint angles are all zero, HC inputs in
END EFF
coincide with those in
ORB UNL/LD
. If the
wrist is then pitched down in that
configuration, the motion to take the arm down
into the payload bay would be a THC
downward deflection in
ORB UNL/LD,would be a push inward on the THC in
END EFF mode.

So I would say that the default Shuttle and Sf are set at ORB UNL, right?
So if you were to switch to EE it would be like you were at the EE and not the base, right? So it would seem the animation might be backwards then?

#### DaveS

##### Space Shuttle Ultra Project co-developer
Donator
Beta Tester
So if you were to switch to EE it would be like you were at the EE and not the base, right? So it would seem the animation might be backwards then?
The default Atlantis only does SINGLE/DIRECT JOINT mode where only one joint is controlled at any one time. The rest are passive.

#### gattispilot

The default Atlantis only does SINGLE/DIRECT JOINT mode where only one joint is controlled at any one time. The rest are passive.

Yes I can see that. I guess on SF you can preset the angle so more than 1 joint moves.

#### Donamy

Donator
Beta Tester
No. It has nothing to do with the camera.

#### gattispilot

Yes. I got that. But as I understand it. The default Shuttle and Sf would be shoulder based. You can move individual joints ONLY except for preset ones.

But if I could switch to EE then movement would be relative to it and not the shoulder? Not it might be backwards? But since only single joints can move not sure the point.

#### Donamy

Donator
Beta Tester
With your version, you are also able to translate in the shoulder based mode.

#### gattispilot

With your version, you are also able to translate in the shoulder based mode.
so a good thing

I was running the SSU and was able to switch the modes but still not able to move the arm? I did the CTRL A and saw controlling rms.

I saw this in the doc for the IK
The cargo bay reference frame is as follows: The origin is at the center of the
shoulder pitch joint.
• The X axis extends down the cargo bay sill, from nose to tail. As you are
looking out one of the aft flight deck windows, +X is directly away from you
and –X is directly towards you.
• The Y axis extends across the cargo bay, from arm joint towards the KU
antenna. Again, looking out the rear windows, +Y is to the left and –Y is to
the right.
• The Z axis is perpendicular to X and Y, and completes a right-handed
system. +Z is “up” and –Z is “down”, again from the point of view of the aft
flight deck.

2006 Chris Jeppesen

So not sure how one could edit the code to make the EE the reference?

#### Donamy

Donator
Beta Tester
The code is in SSU.

#### gattispilot

The code is in SSU.

Thanks. Yes I have seen the code. But the SSU has lots of stuff that I don't need.

But the code for translation IK is based off this:
The cargo bay reference frame is as follows: The origin is at the center of the
shoulder pitch joint.

So I wonder if I just change the origin to the center of the EE?

I would like to see this work in the Candian arm or SSu so I can see if my works.

#### gattispilot

So I am trying to duplicate the issue.

I rotated,.... but it seem to hold to the center

#### Donamy

Donator
Beta Tester
Try it on a payload that has a detailed grapple fixture. Move it all around and see if it stays steady on the fixture, without tilting of of it.