We have built an admittance controller in both ROS and just basic UR Script language. So, robot moves when you push on the end effector, and we can modulate how much it moves by changing mass and damper values. I’m experiencing a weird problem in both implementations… while running the program, if I rotate the end effector by providing a torque in the wrench, the wrench drifts such that there is a significant force in some direction and the robot then moves on its own. At first I thought it might be an issue with our ROS code, but since building an admittance controller in the UR Script language and seeing the exact same thing, I no longer believe that is the case. The weird thing is, if I restart the program while it is drifting, the wrench fixes itself, zeros out, and we no longer drift. This happens without using the zero_ftsensor() function. We do have a deadband of around 1.5N where the robot does not move. The drift wrenches I’ve noticed have been in the 2-5N range, which is exactly the range we need to be measuring at.
I’ve used the wizard to get the tool mass/c.o.g location many times. It doesn’t seem to fix the problem. Interestingly, I do get a somewhat different answer every time I use the built in wizard.
Any ideas as to what is happening?