Collision check
neil
✭
in RobotStudio
I am using the RS collision detection functionality in a path planning problem. Collision-free configurations are generated in the working space and each configuration is joined to create a path. The collision detection events are used to determine the collision-free configurations and paths.
At the moment, an event is raised for each collision event (CollisionStarted and CollisionEnded). To check whether a configuration is collision-free, I count the number of CollisionStarted and CollisionEnded events (because a collision event is raised for each robot link specified in the collision set)
int[] count = new int[2];
count[0] = no of CollisionStarted events
count[1] = no of CollisionEnded events
if(count[0] == count[1])
{
//configuration is collision free
}
else
{
//configuration is not collision free
}
My problem/query is this:
I am looking for a simplified version of the collision detector as the above logic causes some ambiguities when used for checking the path between 2 collision-free configurations.
I am only interested in if the collision is TRUE or FALSE.
If any CollisionStarted event is raised, then:
bool collision = TRUE;
If there are no collision events raised, then:
bool collision = FALSE
Is this possible to achieve with the present collision detector?
Thanks in advance,
Neil
neil2008-8-7 10:58:12
0
Comments
-
Hi Neil,
Have you tried to create an event sink for the CollisionStarted event that sets your boolean flag to TRUE. If there has not been any collision, then the boolean will be FALSE if you define that as the initial value?
Henrik Berlin
ABB0
Categories
- All Categories
- 5.5K RobotStudio
- 396 UpFeed
- 18 Tutorials
- 13 RobotApps
- 297 PowerPacs
- 405 RobotStudio S4
- 1.8K Developer Tools
- 249 ScreenMaker
- 2.7K Robot Controller
- 310 IRC5
- 59 OmniCore
- 7 RCS (Realistic Controller Simulation)
- 786 RAPID Programming
- AppStudio
- 3 RobotStudio AR Viewer
- 18 Wizard Easy Programming
- 105 Collaborative Robots
- 5 Job listings