-
Notifications
You must be signed in to change notification settings - Fork 0
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
Elastica Kinematics #25
Comments
Hi @mstoelzle , please review the latest commits regarding this issue |
I have created the following issues to address specific concerns with the current implementation: |
Sure, will go through them asap to solve |
I am creating this issue for future reference. Please implement first a soft robotic arm and a sphere into the simulation as already discussed previously.
Afterwards, I think the next step is to add some kinematics. This will be quite a bit more mathematical, than all the coding in the first part of the internship :) I am thinking of the following structure:
elastica_kinematics
RodStatesToPCC
with theRodsState.msg
as an input and the PCC kinematic states as an output. We aim to use the following PCC convention:The next components should (hopefully) be applicable for any soft robotic arm, not only for rods simulated within the
elastica
simulator. Thus, we should probably put them into a separate repo with the nameros2-pcc_kinematics
scripts/derive_jacobian.py
, which computes the Jacobian symbolically using sympy and afterwards saves the result as a compiled C++ library. Then, our ROS nodes can access this C++ library for fast usage at run-time. We should have a Jacobian available at the minimum for every tip of each segment. Ideally, we can also evaluate the Jacobian within each segment as a function of a running variables
with minimum 0 (e.g. the base of the segment) and 1 as the maximum (e.g. the tip of the segment).ForwardKinematics
node, which subscribes to a topic with PCC configuration states and publishes the position and orientation of the tip of each segment.The text was updated successfully, but these errors were encountered: