Skip to content
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

Workflow for Wizard #51

Open
mikeferguson opened this issue Jun 7, 2018 · 1 comment
Open

Workflow for Wizard #51

mikeferguson opened this issue Jun 7, 2018 · 1 comment

Comments

@mikeferguson
Copy link
Owner

I've been thinking about how to create a wizard for this, so that people don't have to create/update lots of YAML files manually (which is also error-prone). In the mean-time, this ticket serves as somewhat of a brief HOW-TO to manually create the files.

  • Load and parse the URDF (from parameter server?)
  • User selects the "base_link" which is the frame into which all points will be projected during calibration step.
  • User defines the "chains" by:
    • Entering a name for each
    • Selecting set of active joints that constitute the chain
    • Selecting the follow_joint_trajectory action namespace (introspect options from running system?)
    • Selecting the planning_group to use with MoveIt (if any)
  • User defines the models by adding a model of a given type and then configuring the following:
    • For "chain" - select end effector frame.
    • For "camera3d" - select camera frame, select topic (introspect options from running system?)
  • User defines the finders by adding a finder of a given type and then configuring the following:
    • PlaneFinder
      • Select "camera_sensor_name" from available "models"
      • Select "topic" to subscribe to
      • Select "transform_frame" (defaults to base_link selected above)
      • Set min/max x/y/z
      • Set "points_max"
      • Select true/false for "debug"
    • CheckerboardFinder
      • Select "camera_sensor_name" from available "models"
      • Select "chain_sensor_name" from available "models"
      • Select "topic" to subscribe to
      • Set points_x, points_y, size
      • Select true/false for "debug"
    • LedFinder - probably not worth adding to wizard (just preserve if it exists)
  • User defines error_blocks by selecting/adding by type first:
    • chain3d_to_chain3d - Select model_a, model_b from models.
    • chain3d_to_plane - Select model_a from models. Set a, b, c, d and scale.
    • plane_to_plane - Select model_a, model_b from models. Set scale_normal, scale_offset.
    • outrageous - Select param from list of possible free params. Set joint_scale, position_scale, rotation_scale.
  • User selects free params through a series of checkboxes
    • Available names are each joint name, fx/fy/cx/cy/z_offset/z_scaling for each camera)
  • User selects free frames through a series of checkboxes
    • For each free frame, select x/y/z/r/p/y. Also do check that 0, 1, or 3 of r/p/y are set (setting two to true doesn't do what you think -- these are axis-magnitude internally).
  • Finally have user manually move arm while both capturing data for the first calibration and creating the bag file for export.

As with the MoveIt wizard, we would want to be able to reload the YAML files exported and edit them.

@mikeferguson
Copy link
Owner Author

Special cases that we could have quick starts for:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant