krishauser/Klampt-examples

Motion planning: RuntimeError: Start Configuration is infeasible

Closed this issue · 2 comments

When trying to set up a simple motion planner I always get this error:
RuntimeError: Start configuration is infeasible
even when the start config (qinit) = default robot config (all zeros)
So I tried the demo "planning_test.py" found in the Python3/demos directory but got the same error.

######################################### klampt.vis: Dialog done on window 1 ######################################### vis.dialog(): ... dialog done GLPluginProgram.pushPlugin called after window was initialized, some actions may not be available Returning from editor to old window 0 vis.editors.run(): Result True return value [[0.0, 0.33960574545980493, -2.1964686754911353, -0.7687452944315742, -3.0961843026414138, -0.9222354690056318, -0.12690989085665472, 0.0, 0.0, 0.0], [0.0, -0.38062767544857723, -0.8228674393267199, -2.5774453267190305, -0.012832840531500514, -0.562650944925845, 0.8058588150306663, 0.0, 0.0, 0.0], [0.0, -0.322686574440482, 0.3914601754648459, -3.1636002671487673, 1.0599618680213916, -1.6798794779356159, 0.1980007194963125, 0.0, 0.0, 0.0]] Creating plan... ######### QGLWidget setProgram ############### Traceback (most recent call last): File "/home/benoit/Desktop/motion-planner/klampt_env/library_examples/Python3/demos/planning_test.py", line 155, in <module> plan.setEndpoints(configs[i],configs[i+1]) File "/usr/local/lib/python3.10/dist-packages/Klampt-0.9.0-py3.10-linux-x86_64.egg/klampt/plan/cspace.py", line 342, in setEndpoints self.planner.setEndpoints(start,goal) File "/usr/local/lib/python3.10/dist-packages/Klampt-0.9.0-py3.10-linux-x86_64.egg/klampt/plan/motionplanning.py", line 873, in setEndpoints return _motionplanning.PlannerInterface_setEndpoints(self, start, goal) RuntimeError: Start configuration is infeasible Visualization thread closing and cleaning up Qt... ######### QGLWidget close ############### ######### QGLWidget close ############### QObject::~QObject: Timers cannot be stopped from another thread

Typically this is caused by your URDF having some self collisions at the zero configuration. I suggest building the RobotTest app, then opening your URDF. If you check the “Self Collisions” box it will highlight self colliding links in red. You can also print the self colliding links using the button next to that checkbox, and get some text to copy and paste into the tag under the URDF to ignore those false positive self collisions.

Hi,
I have build the klampt lib from source and used the RobotTest app as you mentioned and I do see the collisions. But I'm not able to get the self colliding links as you mentioned. I tried with a URDF file and with a ROB file but both don't give me anything. Am I doing something wrong?
here you can find screenshots with the commands I used:

../klampt/bin/RobotTest robots/irb2600.urdf
urdf collision

../klampt/bin/RobotTest robots/irb2600.urdf
both rob collision