peterdavidfagan / moveit2_camera_calibration

A PyQT GUI that leverages MoveIt2 to calibrate cameras.
Apache License 2.0
2 stars 0 forks source link

Failed to plan trajectory #4

Closed luffycheung closed 2 weeks ago

luffycheung commented 3 weeks ago

for i in range(self.config["eye_in_hand_calibration"]["num_samples"]): self.env.step() when plan_and_execute raise RuntimeError("Failed to plan trajectory") RuntimeError: Failed to plan trajectory program stuck,cannot cuntinue execute calculate target to camera transform task. if plan failed,can return False,to run next random traj.

peterdavidfagan commented 3 weeks ago

Hi @luffycheung,

Thanks for using my ROS 2 package.

This line is to blame: https://github.com/peterdavidfagan/moveit2_camera_calibration/blob/0a788e200f2bab511fd543fe90a6032ab175d9db/moveit2_camera_calibration/robot_workspaces/franka_table.py#L52.

I'll look to update the implementation so it will retry plan generation with a try/except statement up until some max number of retries. In general, it should be rare to encounter planning errors for free-space motions, are you leveraging the same plan request parameters for the planners? In my case I define plan request parameters for the ["pilz_lin", "pilz_ptp", "ompl_rrtc"] and create multi pipeline plan request parameters as below:

multi_pipeline_plan_request_params = MultiPipelinePlanRequestParameters(
            self.panda, ["pilz_lin", "pilz_ptp", "ompl_rrtc"]
        )

Feel free to provide feedback on your usage, I am happy to update the package so it is more broadly usable by other developers in the open-source dev community.

luffycheung commented 3 weeks ago

Thanks .My env:ubuntu22.04 humble + moveit2(iron branch) source. I comment raise RuntimeError("Failed to plan trajectory")the app can continue run. I also use mulit plan param ["pilz_lin", "pilz_ptp", "ompl_rrtc"]. Maybe is my moveit config issue or moveit2 bug, I will review it. The follow log file: camera_calibration_app_log.txt and the results: 09_55_26.txt

luffycheung commented 3 weeks ago

It's MoveItConfigsBuilder defaut pilz config issue. Use your moveit_cpp yaml config can reduce the chance of failure. My camera is in hand, after change workspace rpy angle [-10,10],can Completed trajectory execution with status SUCCEEDED ...,and success rate is:24/30.

peterdavidfagan commented 3 weeks ago

Awesome, ok still I guess it would be preferable to have greater than 99% success rate so as to save time when using this app. Happy to work towards this once back, I can benchmark on the Franka Emika Panda.

luffycheung commented 2 weeks ago

It's a problem with the initial posture of my robotic arm. When I modify the posture to be roughly the same as the robotic arm in your video, I can execute it 100% as planned.

peterdavidfagan commented 2 weeks ago

Nice @luffycheung great to hear that it is now working for your setup.