-
Notifications
You must be signed in to change notification settings - Fork 91
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
[Polymetis] Reading Gripper (Franka Hand) State Slow #1380
Comments
Seems expected when comparing a 200Hz vs. 1kHz robot. See #756 if you want non-blocking reads. |
Hmm so a couple questions:
|
Similarly, I'm observing that even robot.update_desired_joint_positions takes ~7ms to run. I was under the impression it would be non blocking and pretty much instantaneous? |
Non-blocking reads does not provide any value as it would be nearly as fast as a blocking read. Sending non-blocking commands should indeed be quite fast, can you check your ping between the two machines to see if you're being bottlenecked by internet speed? Also, arm commands usually takes a bit longer than gripper commands to send (especially the move_to commands) because it's a bit more complicated to construct the commands. |
Definitely not blocked by server speed, ping time is under ~0.5 ms. Also, actually finding that arm commands are ~3ms faster than gripper commands :) |
I also have a temp fix of running the commands in a new thread |
That is interesting, thanks for the detailed info. |
Thank you as always! Oh also one argument for the non-blocking read: I'd like to get current gripper width to feed into a policy. Giving it current pose / joints takes ~1ms, but if I want to give it gripper it requires an extra ~10ms currently. I'd much prefer a quicker, but less potentially older read :) |
I'm now realizing that this command runs in ~1ms. How did you guys fix this? :) |
We didn't make any changes with regard to this issue :D |
Hahah interesting!! Especially since the gripper hz is stil 200… I wouldn’t consider it fully resolved since robot.update_desired_joint_positions takes ~7ms for some reason, but the running the command in a thread solution works works well :) |
It seems that reading the gripper state is over 10x slower than reading from the robot state, and I was wondering if it would be possible to get them both on par :)
Extra details: I'm using a robotic gripper
Robot State Reading:
Avg Delay: 0.0021165368556976317
Std Delay: 0.0008280045818800743
Min Delay: 0.000965118408203125
Max Delay: 0.011021852493286133
Gripper State Reading:
Avg Delay: 0.032056391954421996
Std Delay: 0.0017448229778961374
Min Delay: 0.02130889892578125
Max Delay: 0.05079293251037598
The text was updated successfully, but these errors were encountered: