Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[controlboard] implement missing methods in GazeboYarpControlBoardDriver #154

Closed
10 tasks done
traversaro opened this issue Nov 13, 2014 · 7 comments
Closed
10 tasks done

Comments

@traversaro
Copy link
Member

traversaro commented Nov 13, 2014

Several methods are not implemented in GazeboYarpControlBoardDriver.

  • relativeMove(const int n_joint, const int *joints, const double *deltas)
  • checkMotionDone(const int n_joint, const int *joints, bool *flags)
  • setRefSpeeds(const int n_joint, const int *joints, const double *spds)
  • getRefSpeeds(const int n_joint, const int *joints, double *spds)
  • getRefAccelerations(const int n_joint, const int *joints, double *accs)
  • stop(const int n_joint, const int *joints)
  • setPositionDirectMode()
  • getEncoderAcceleration(int j, double *spds)
  • getEncoderAccelerations(double *accs)
  • All the methods of IPidControl interface

If we want to use gazebo_yarp_controlboard for unit test of the controlboard related-software (simulated controlboard, real controlboard, wrappers) we should implement them.

cc @EnricoMingo @arocchi

@EnricoMingo
Copy link
Member

What is a relativeMove() in joint space?
Il 13/nov/2014 09:55 "Silvio Traversaro" notifications@github.com ha
scritto:

Several methods are not implemented in GazeboYarpControlBoardDriver.

  • relativeMove(const int n_joint, const int *joints, const double
    *deltas)
  • checkMotionDone(const int n_joint, const int *joints, bool *flags)
  • setRefSpeeds(const int n_joint, const int *joints, const double
    *spds)
  • getRefSpeeds(const int n_joint, const int *joints, double *spds)
  • getRefAccelerations(const int n_joint, const int *joints, double
    *accs)
  • stop(const int n_joint, const int *joints)
  • setPositionDirectMode()
  • getEncoderAcceleration(int j, double *spds)
  • getEncoderAccelerations(double *accs) If we want to use
    gazebo_yarp_controlboard for unit test of the controlboard
    related-software (simulated controlboard, real controlboard, wrappers) we
    should implement them.

cc @EnricoMingo https://github.com/EnricoMingo @arocchi
https://github.com/arocchi


Reply to this email directly or view it on GitHub
#154.

@traversaro
Copy link
Member Author

Is modifies the desired position by the amount specified in delta. The "normal" relativeMove methods are implemented, the only one missing is the one for sending the command just to a subset of the joints.

@EnricoMingo
Copy link
Member

Ok got it.
Il 13/nov/2014 10:04 "Silvio Traversaro" notifications@github.com ha
scritto:

Is modifies the desired position by the amount specified in delta. The
"normal" relativeMove methods are implemented, the only one missing is the
one for sending the command just to a subset of the joints.


Reply to this email directly or view it on GitHub
#154 (comment)
.

@arocchi
Copy link
Contributor

arocchi commented Nov 13, 2014

Also didn't know about an explicit setPositionDirectMode() :P It is the same prototype we implemented in yarp_single_chain_interface BTW :P

@traversaro
Copy link
Member Author

Relative to the IPidControl interfaces, we have to clean up how we load PID gains, see #119 .
Now the unit of measurement in GAZEBO_PIDS [1] I am afraid are [PidOutputUnit]/[rad*] while the IPidControl assumes that the unit of measurement are [PidOutputUnit]/[deg*] . The GAZEBO_IMPEDANCE_POSITION_PIDS gains seem ok.

To switch to degrees based groups perhaps we can load a new GAZEBO_POS_PIDS group for degree-based gains, and if this is not available we can load the old GAZEBO_PIDS group, accepting gains in radians-based units.

[1] :

@traversaro
Copy link
Member Author

The rest of methods are returning false as of #267 and are not implemented in other icub-maincontrolboards. I consider this issue to be closed when we merge #267 .

@traversaro
Copy link
Member Author

Closed as #279 was closed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants