ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

How do I plan a joint path for a robot arm to move along a surface of points ?

asked 2018-12-27 13:13:22 -0500

mikevillan26 gravatar image

updated 2018-12-27 13:31:14 -0500

I am new to Moveit so please forgive me for gaps in knowledge.

I want to be able to upload a collection of cartesian points (which create a surface) taken from a scanner into Moveit and plan a joint path for my robot model to move along and normal to the surface while avoiding collisions.

I am able to upload my model and I have the points and can convert them to whatever data type I would need, but I am unsure of how to actually upload it into Moveit to be able to use for path planning. Also once I have both the robot and surface in Moveit, how do I create my desired joint trajectory and save it as I am unable to send commands directly to the robot because I am working with an older ABB S4C+ controller that is only able to receive remote commands through FTP of RAPID code?

Does anyone have any sample code or advice that could help me do this?

edit retag flag offensive close merge delete

Comments

Related question: #q292570.

gvdhoorn gravatar image gvdhoorn  ( 2018-12-28 09:11:29 -0500 )edit

@mikevillan26: I've converted my string of comments into an answer, as I believe they (partly) answered your question.

gvdhoorn gravatar image gvdhoorn  ( 2018-12-28 09:12:36 -0500 )edit

@mikevillan26 Did you ever figure out how to get a robot manipulator to move normal to a surface/ mesh? Thanks

Camsmart gravatar image Camsmart  ( 2022-06-14 14:12:46 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
4

answered 2018-12-27 13:24:07 -0500

gvdhoorn gravatar image

updated 2021-06-02 07:30:40 -0500

First (and FYI): RViz is only a visualisation tool. This may sound pedantic, but RViz does not do any planning, modelling or any such tasks. It only visualises data streams, either on their own or with the help of some other things like meshes, FK/IK, etc.

Reason I add this comment is because it doesn't make much sense to search for RViz + "such functionality".

But doesn't Moveit, the RViz plugin, do path planning?

No. MoveIt is not an RViz plugin.

The "MoveIt RViz Plugin" is an RViz plugin, but that is a stand-alone extension to RViz that allows it to be used as a programmers/debugging interface for MoveIt and visualises the outputs of the planning process that MoveIt performs for you.

MoveIt itself is a stand-alone library and set of tools (and a ROS node tying that all together for you and providing topic, service and action interfaces to that functionality) that together support motion planning tasks, potentially for ROS enabled robots -- but even that is not a strict requirement.

Again, this may sound pedantic, but it's really important to understand that there is no direct link between RViz and any of these tools nor any requirement to use them together.


As to your question: perhaps libraries like Tesseract, Descartes (bit older) and/or Noether can help. Also look at Godel milestone 4 (Milestone 5 is being planned).

Can I create a mesh from the points and use it as a collision object or something?

that would probably be a good thing to do, seeing as it would enable the mentioned planners to take the surface into account for collision avoidance, but it isn't needed for the bare motion planning task.

You "just" setup a scene (including your robot + EEF descriptions), provide the planners with the set of "waypoints" you want your EEF to follow, set up tolerances (some processes are 5D, while your robot is 6D) and start the planning process. That gets you a path. Post-process into a trajectory, and either use a live connection with a robot to execute the path (possibly with feedback on how the robot is doing) or generate an off-line RAPID program from that trajectory and upload it using whatever means you have available (see Godel for the "upload RAPID program" approach).

PS: if you're in the US -- and I have a hunch you are -- you might want to get in touch with SwRI (Texas). Specifically Matt Robinson of the Manufacturing Robotics & Technologies Department. They have a lot of experience with the use of ROS in the type of applications I believe you are looking at.

edit flag offensive delete link more

Comments

But doesn't Moveit, the RViz plugin, do path planning? Can I create a mesh from the points and use it as a collision object or something?

mikevillan26 gravatar image mikevillan26  ( 2018-12-27 13:25:54 -0500 )edit

Question Tools

1 follower

Stats

Asked: 2018-12-27 13:13:22 -0500

Seen: 1,617 times

Last updated: Jun 02 '21