-
Notifications
You must be signed in to change notification settings - Fork 44
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
Question for dynamic parameters of the robot #60
Comments
I have used the inertia values from the URDF to do torque-based control in KUKA and never encountered big issues. Note you have to be careful what torque to send: KUKA is always adding the gravity compensation to the command that you send. |
Where do the values come from? I always thought that the 14kg version values come from this publication, but the ones they mention in the appendix differ from the ones in the urdf.. |
We just copy-pasted those values from iiwa_stack. I never actually tested how accurate they are. Nevertheless, I have been using the code for torque-based control (with model-based controllers where the model comes from the URDF) and never experienced very bad behavior in both iiwa14 and iiwa7 (mostly iiwa14 to be honest). I remember that @fkhadivar did some work on identifying the model for iiwa14, and I guess we can do the same procedure for iiwa7. @fkhadivar can you share the work/code of this? |
Thank you all for the quick reply. I have two questions now for the forwardKinamtics:
It would be great if you could let me know which calculation of the FK is accurate or how I may use the fk service provided in the iiwa_tools. I would really appreciate any help. Thanks. |
Here's a quick example of using the messages for FK: from iiwa_tools.srv import GetFK
fk_service = '/iiwa/iiwa_fk_server'
rospy.wait_for_service(fk_service)
get_fk = rospy.ServiceProxy(fk_service, GetFK)
seed = Float64MultiArray()
seed.layout = MultiArrayLayout()
seed.layout.dim = [MultiArrayDimension(), MultiArrayDimension()]
seed.layout.dim[0].size = 1
seed.layout.dim[1].size = 7
seed.data = [0., 1., 0., -1., 0., 1., 0.]
resp = get_fk(joints=seed)
sol_pose = resp.poses[0]
print('sol:', sol_pose)
No idea what this |
That is simply the IIWA's Smart Pad. You can see Kuka's FK estimation on it. I guess @Thompson104 is taking it as the ground truth to validate your FK calculation with @Thompson104 Be careful, you might be looking at the FK for the "flange" frame on the Smart Pad, while comparing it to a different end_effector frame (link_7 maybe) with |
Thank you guys for the quick response. Really appreciate it. I think the smart pad shows the FK of the flange frame and this caused the FK calculation difference.
Thanks for providing this repo. I promise those two questions would be my last questions at least for the current time period. |
You need to use this java file (and define and select the gripper/tool accordingly) if you want the gripper to be taken into account. Can you verify that you did this?
You mean citing the package in a scientific publication? |
Thanks. |
Please re-open this issue and add a reference if you have any, otherwise I'm closing this issue. Thank you for your help. |
I do not really have a way to cite this repo. Let me create something quickly and update the README. |
Hello,
This question is about the correctness of the inertia parameters of the kuka robot. I know that there was a similar discussion, and the correct/official inertia values from kuka is not known. However, I would like to know if the inertia values from the urdf is accurate enough to perform torque-based control, or should I anticipate any trouble if I use the inertia values from the urdf?
Thanks a lot.
The text was updated successfully, but these errors were encountered: