Kinovarobotics / ros_kortex

ROS packages for KINOVA® KORTEX™ robotic arms
Other
153 stars 155 forks source link

How to avoid protection zones in cartesian mode #316

Closed MiguelGarciaUVa closed 5 months ago

MiguelGarciaUVa commented 5 months ago

Hello, I would like to ask the community if there is any way to avoid the protection zones when calculating the inverse kinematics. It is true that once the inverse kinematics is calculated, the robot tries to do the trajectory and, if it collides with a protection zone, it stops. I want it to generate the trajectory avoiding these protection zones first, instead of stopping when it reaches them. Is there any function implemented to do this? I'm not using MoveIt, I'm using the action type reach_pose to send the cartesian pose I want. Thanks in advance !!

martinleroux commented 5 months ago

Hi Miguel,

Using cartesian actions, the robot will always have the behaviour that you are describing. The only solution is to add additional points to move around your obstacle directly in your trajectory. There are many strategies with varied levels of complexity. A popular "family" of strategies is that of A* and its derivatives. Here is a great article on Research Gate on the topic: https://www.researchgate.net/figure/Normal-path-generation-with-a-traditional-A-Star-algorithm-and-an-improved-A-Star_fig4_331738923