start-jsk / rtmros_hironx

hironx controller and applications using rtmros packages
http://wiki.ros.org/rtmros_hironx
10 stars 27 forks source link

hironx init pose may not be set factory initial value #107

Closed 130s closed 10 years ago

130s commented 10 years ago

I don't know if this applies to all Hiro but for some newer robots, the pose HIRONX.goInitial sets is different from its factory initial pose.

For NextageClient, it's adjusted.

Unless there's a need I want the same value for HIRONX so that I can use the same code between Hiro and NXO.

I can't find a commit log where the current value was set (log).

emijah commented 10 years ago

It may have been there from the beginning. The default value for GRX was [-0.6, 0, -100, 15.2, 9.4, 3.2], [ 0.6, 0, -100, -15.2, 9.4, -3.2], However, the new values should be the ones used to check joint alignment.

k-okada commented 10 years ago

what is factory initial pose ??? the pose which the robot is set after the calibration?

On Wed, Jun 4, 2014 at 2:44 PM, Hajime SAITO notifications@github.com wrote:

It may have been there from the beginning.

— Reply to this email directly or view it on GitHub https://github.com/start-jsk/rtmros_hironx/issues/107#issuecomment-45053530 .

130s commented 10 years ago

what is factory initial pose ??? the pose which the robot is set after the calibration?

I meant factory initial pose as the one manufacturer uses for calibration. As I said, initial pose of NextageClient is already set with the manufacturer's value.

If this suggestion is acceptable, I'll apply the change. Then we need to notify the current users since this might break their application program.

k-okada commented 10 years ago

Let me clear the situation

What is the reason of changing initial pose to factory calibration pose?(What's the dis-advantage of goInitial() is different from factory initial pose?)

Does factory initial pose happen only after checkEncoders() ? what's will happens if we put goInital in the end of checkEncoders() function?

Basically,

                   [-0.6, 0, -140, 15.2, 9.4, 3.2],
                   [0.6, 0, -140, -15.2, 9.4, -3.2],

is better than

                   [-0, 0, -130, 0, 0, 0],
                   [0, 0, -130, 0, 0, 0],

because, the angle of the end-effecter becomes 0. so that's seems better initial posture for users to start with, specially, they uses setTargetPoseRelative()

130s commented 10 years ago

What is the reason of changing initial pose to factory calibration pose?(What's the dis-advantage of goInitial() is different from factory initial pose?)

What I want is:

Does factory initial pose happen only after checkEncoders() ? what's will happens if we put goInital in the end of checkEncoders() function?

I doesn't matter when the factory init pose happens, I think.

Basically,

               [-0.6, 0, -140, 15.2, 9.4, 3.2],
               [0.6, 0, -140, -15.2, 9.4, -3.2],

is better than

               [-0, 0, -130, 0, 0, 0],
               [0, 0, -130, 0, 0, 0],

because, the angle of the end-effecter becomes 0. so that's seems better initial posture for users to start with, specially, they uses setTargetPoseRelative()

I agree, and I'm sure @emijah does too.

So in conclusion, I guess I'll open a solution PReq that does:

emijah commented 10 years ago

Yes I agree too.