TriPed-Robot / trip_kinematics

Python package for inverse kinematic calculations of hybrid serial parallel robots
https://trip-kinematics.readthedocs.io/en/main/
MIT License
28 stars 5 forks source link

Standart mapping functions #8

Closed liquidcronos closed 3 years ago

liquidcronos commented 3 years ago

For simple open chains there should be no need to provide a mapping.

For this reason if no mapping is provided the trivial 1to1 mapping of actuated and virtual joints should be used

TorbenMiller commented 3 years ago

This is already implemented. If you found a case were it doesn't work it could be a bug

liquidcronos commented 3 years ago

I am not sure if i am missing something, but i dont see where this is implemented in the main branch...

And in any case why is there the following error message if there is a default mapping:

        if not ((actuated_state and f_mapping and g_mapping) or not (actuated_state and f_mapping and g_mapping)):
            raise ValueError(
                "For actuated states a forward and an inverse mapping are required.")
TorbenMiller commented 3 years ago

This piece of go makes sure that if that groups can only have either an actuated state and both mappings or nothing.

If you want to use a trivial mapping that in the transformation. There is no need to specify an actuated state in the KinematicgGroup constructor.

liquidcronos commented 3 years ago

Not sure I agree, we can further discuss this on Tuesday

liquidcronos commented 3 years ago

This piece of go makes sure that if that groups can only have either an actuated state and both mappings or nothing.

If you want to use a trivial mapping that in the transformation. There is no need to specify an actuated state in the KinematicgGroup constructor.

This simply not true. With no actuated state, it is not possible to set the state and the leg is locked in its initial transformation!!

liquidcronos commented 3 years ago

fixed in commit d2c272ff0cdffc8df1e9a63709825af1f6e8bd64