ROS-Based UR Scan ApproachUR10e Reconstruction: Integrating Robotics, 3D Scanning, and Precision Fabrication
This post presents the UR10e Industrial Reconstruction Controller, developed for the MRAC24/25 program at IAAC. Our team—Santosh Prabhu, Nacho Monereo, and Neil Trouw—has built a system architecture that synchronizes a UR10e robot, depth sensors, and a Dockerized ROS environment to capture and reconstruct 3D models.
1.Introduction
Enhanced Fabrication Precision Through Perception-Driven Robotics
Our goal is to integrate a UR10e robot with a depth sensor (ZED camera) for accurate 3D scanning. This architecture focuses on systematically capturing, reconstructing, and analyzing point cloud data to improve precision in robotic processes—particularly relevant for tasks where exact geometry matters, such as stone carving or other fabrication workflows. Although real-time path adaptation is a future possibility, the current setup emphasizes reliable scanning and subsequent mesh generation.

2.Problem: High-Precision Chiseling
Conventional robotic fabrication can suffer from tolerances that accumulate over multiple passes. Achieving consistent accuracy requires updated data on the real geometry of the part. Scanning at various stages allows for identifying deviations between the “ideal” CAD model and the actual state of the workpiece.

3.Workflow
- Scan Object
- Design Toolpath (Grasshopper or other CAM tools)
- Fabricate (UR10e executes the programmed path)
- Re-scan the partially fabricated object for new point cloud data
- Construct Mesh & Compare against the intended design
- Adjust Toolpath if needed, based on discrepancies
hough we are not performing instant adaptation, each scan-feed-analyze cycle refines the model and can inform improved future operation

4.System Setup
Our hardware and software configuration comprises:
- UR10e Robot for manipulation and IO feedback
- ZED Camera (or Azure Kinect) providing depth data
- PC running Dockerized ROS with GPU support for point cloud processing
UR10e --(IO)--> Recon Controller Node --(ROS)--> Depth Camera & PC --(PLY files)--> Mesh Reconstruction

5.ROS Workflow & Software Stack
The overall ROS-based system includes:
- Initialization
- ROS node (
recon_io
) starts and subscribes to/ur_hardware_interface/io_states
.
- ROS node (
- IO Signal Processing
- Detects “capture” signals from the UR10e robot (HIGH to start reconstruction, LOW to stop).
- Service Invocation
/start_reconstruction
and/stop_reconstruction
calls, saving time-stamped point clouds.
- Sequential Consistency
- The node blocks new requests until the ongoing reconstruction completes, preventing data overlap.

6.Key Features

7.Point Cloud Processing
Reconstruction is performed in Grasshopper (linked to Open3D Python libraries). Three main methods are typically used:
- Alpha Shape
Ideal for complex, organic forms. - Ball Pivoting Algorithm (BPA)
Suited for structured models and uniform point densities. - Poisson Surface Reconstruction
Generates watertight surfaces and handles smooth geometries well.




8. Mesh Analysis & Toolpath Adjustment
- Pre-Process Scan: Captures geometry of the raw or partially processed piece.
- Post-Process Scan: Compares final geometry with the target mesh.
- Analysis: Identify deviations, potential collision zones, and discrepancies for offline toolpath correction.
While we do not perform immediate toolpath re-calculation during the scan, the system provides robust data for subsequent iteration and improvement.

9. Conclusion & Reflection
The UR10e Industrial Reconstruction Controller offers a reliable scanning pipeline, tying together a UR10e robot, ROS-based control, and advanced mesh reconstruction in Grasshopper. By methodically capturing point clouds, storing them with timestamps, and ensuring data consistency, we set the stage for precise robotic fabrication workflows—whether in stone carving, milling, or other applications requiring real geometry feedback.
Future Considerations
- Real-time or near-real-time path correction is the next natural evolution.
- Further optimization can include advanced noise filtering and higher-resolution scanning for complex surfaces.
10. Team & Acknowledgments
- Collaborators: Santosh Prabhu, Nacho Monereo, Neil Trouw
- Director: Alexandre Dubor
- Faculty: Huanyu Li, Shu Xiao, Marita Georganta
- Program: MRAC 24/25 at IAAC
For technical details on Docker configuration, code scripts, or contributing to the project, visit our GitHub repository.
