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

feat: accept frame transform from non-base frame #145

Closed
wants to merge 4 commits into from

Conversation

JasperTan97
Copy link

@JasperTan97 JasperTan97 commented Oct 17, 2023

Description

This PR solves the issue by adding a parameter, and doing the frame transform using AICA's state representation

Review guidelines

Estimated Time of Review: 5 minutes

Checklist before merging:

  • Confirm that the relevant changelog(s) are up-to-date in case of any user-facing changes
  • Make unit tests

@JasperTan97 JasperTan97 requested a review from domire8 October 17, 2023 12:51
@JasperTan97 JasperTan97 self-assigned this Oct 17, 2023
@JasperTan97 JasperTan97 linked an issue Oct 17, 2023 that may be closed by this pull request
…ology/control-libraries into feature/frame-transform

Gitbot updated in remote
* @return the desired poses
*/
std::vector<state_representation::CartesianPose> forward_kinematics(const state_representation::JointPositions& joint_positions,
const std::vector<unsigned int>& frame_ids);
const std::vector<unsigned int>& frame_ids,
const unsigned int ref_frame_id = 0);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm temped to say that the reference frame has to be a vector too @eeberhard what do you think?
Or should we provide a vector of pairs?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you mean like multiple reference frames so we get back multiple viewpoints of the same frame, or rather we will get back num_of_frame_ids * num_of_ref_frame_ids back

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

More in the sense that if you provide a vector of frame ids, you would also need to provide a reference frame id for each frame id that you request.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IMO a common reference frame is sufficient. From an API side, it's simpler this way. I don't know how common it would be to request each frame in a separate reference frame, and even then you can just use state representation after the fact to transform a frame secondarily if it's super necessary (i.e., get elbow and wrist in base frame, then find wrist in elbow frame afterwards)

@domire8
Copy link
Member

domire8 commented Nov 6, 2023

Maybe we can pick this up another time. Thanks for the initial effort!

@domire8 domire8 closed this Nov 6, 2023
@github-actions github-actions bot locked and limited conversation to collaborators Nov 6, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Extract transforms between two frames from robot model
3 participants