This is just a discussion of if and how to integrate real-time motion planners in MoveIt!
Currently the jog_arm package does this with a Jacobian-based jogger -- it subscribes to joystick commands or force feedback commands to calculate a trajectory. I'm OK keeping this as a separate package but there are lots of advantages to moving under the MoveIt! umbrella, I think.
Of course, it's also worth considering how future real-time planners might fit in...
The jog_arm package has a C++ API that makes it easier for users to provide a jogging command programmatically. Usage of the API is like this, at present:
> // Send motion commands with a jog_api object:
> std::string move_group_name = "manipulator";
> jog_api jogger(move_group_name);
>
> // 1cm tolerance on the linear motion.
> // 0.01rad tolerance on the angular
> // Scale linear velocity commands between -0.5:0.5
> // Scale angular velocity commands between -1.0 : 1.0
> // Timeout, i.e. stop sending commands, after 10s
> if ( !jogger.jacobian_move(new_pose, 0.01, 0.01, 0.5, 1.0, ros::Duration(10)) )
> {
> ROS_ERROR_STREAM("Jacobian move failed");
> return 1;
> }
Pros of the real-time Jacobian planner, in comparison to the current MoveIt! planners:
* Determinism (if starting from the same pose, with the same target, its motion will be repeatable)
* ~0 planning time
* No reconfigurations, i.e. sudden, wild swings of the arm
* The trajectory can be altered in real-time
Drawbacks of the Jacobian planner:
* Trajectories can't be previewed in RViz
* The planner takes a straight line -- it doesn't know how to plan around obstacles, singularities, or joint limits
* This Jacobian technique is generally only useful over short distances.
Thanks!
---
[Visit Topic](
https://discourse.ros.org/t/a-real-time-motion-planner/4354/1) or reply to this email to respond.
If you do not want to receive messages from ros-users please use the unsubscribe link below. If you use the one above, you will stop all of ros-users from receiving updates.
______________________________________________________________________________
ros-users mailing list
ros-users@lists.ros.org
http://lists.ros.org/mailman/listinfo/ros-users
Unsubscribe: <
http://lists.ros.org/mailman//options/ros-users>