roboticslab-uc3m / openrave-yarp-plugins

OpenRAVE plugins to interface OpenRAVE with YARP.
https://robots.uc3m.es/openrave-yarp-plugins/
GNU Lesser General Public License v2.1
3 stars 1 forks source link

Need functional collision avoidance module #84

Closed jgvictores closed 6 years ago

jgvictores commented 6 years ago

From @jgvictores on October 14, 2016 8:22

Started work on C++ teoCollisionAvoidance, but may be more practical to do in Python.

Copied from original issue: roboticslab-uc3m/kinematics-dynamics#63

jgvictores commented 6 years ago

From @RaulFdzbis on October 19, 2016 16:15

Some advances have been made in this area. Some problems and solutions have been found working in this issue. The followings are: Good things

Not so good things (TODO)

At this moment the direction of the work done in this issue is to be able to perform a checkselfcollision test using the cdmodel. However this is not as critital as could seem. The reason is because there are many other ways to do a padding in the robot model. This could be done manually changing the xml file of the robot (rude way of doing things), or creating some new trimesh and assign it to the robot collision mesh (something similar as what is done in CD). However right now the best option still is to use the convexdecomposition module. So some more work should be done in this direction.

jgvictores commented 6 years ago

From @RaulFdzbis on October 20, 2016 12:53

Update 1: How setrobot() works After some experiments the conclusion is that the setrobot() function is in charge to assign the collisionmesh generated with the ConvexDecomposition module to the xml robot.

This means that in our tests the collisionmesh is changed to the convexdecomposition model. However, the selfcollision function stills not detecting the selfcollision that should appear after this padding. Some study about how the selfcollision function works should be done at this moment.

jgvictores commented 6 years ago

From @RaulFdzbis on October 21, 2016 14:44

Update 2: CheckCollision test Successful CheckSelfcollision() was successfully tested in the new experiments. Openrave is able to detect collision using the cdmodel as the collision mesh. To test this a new experiment was performed. In this experiment instead of using high padding values, the robot was initially moved to a collision position. Then a checkselfcollision test is performed.

The results of these experiments show how in some positions, the robot didnt detect any self collision using the detailed model (without ConvexDecomposition). However, using a padded cdmodel in the same position the robot detected a collision. This means that the padded cdmodel is successfully generated and used for collision checks in openrave.

jgvictores commented 6 years ago

Now at: https://github.com/roboticslab-uc3m/openrave-yarp-plugins

jgvictores commented 6 years ago

Good against simulator at https://github.com/roboticslab-uc3m/openrave-yarp-plugins/commit/8704a332ad4dfd3e044f4b8ffd64d731c59c69c4

jgvictores commented 6 years ago

Tested and working with simulator and real robot, now only issue is to "Improve implementation and documentation for teo vs teoSim" (https://github.com/roboticslab-uc3m/openrave-yarp-plugins/issues/13). Closing issue.

jgvictores commented 6 years ago

Reopening just to reflect state on https://github.com/roboticslab-uc3m/teo-main/projects/1 which is not at global scope of organization.

jgvictores commented 6 years ago

Finished at around https://github.com/roboticslab-uc3m/openrave-yarp-plugins/commit/4afbb7cf2e0e81a8c4d537cc7f8c923d208aa69f.

jgvictores commented 6 years ago

Will be tracked at #83