Is there any built in functionality within Isaac Sim that reports a list of all objects on a conveyor and reports their coordinates? This would be helpful when creating robotic pick and place simulations.
If there’s no current built in functionality, does anyone have any suggestions on how to approach this problem?
Hi @tsosnoski - Isaac Sim does not have a built-in functionality specifically for reporting a list of all objects on a conveyor and their coordinates. However, you can achieve this by using the Python API provided by Isaac Sim.
Here’s a general approach:
Identify the conveyor: You can use the stage API to get a reference to the conveyor object in the scene.
Identify objects on the conveyor: You can use the stage API to iterate over all objects in the scene. For each object, you can check if it’s on the conveyor. This could be done by checking if the object’s bounding box intersects with the conveyor’s bounding box.
Get object coordinates: For each object on the conveyor, you can use the stage API to get its world transform, which includes its position in world coordinates.
Thanks rthaker for the response. I found a way to accomplish it which was based of one of AshleyG’s learn with me live sessions. She wrote a behavior script to count boxes in contact with a pallet. I began with her code and reported back the coordinates of the objects instead of counting them. Then I added a function to monitor when the objects fall off so they could be removed from the array.
I like your suggestion of using bounding boxes. It would likely be a cleaner approach. I will need to investigate that.