Transforming Vision into Action

The Armlab Robotic System integrates a 5-DOF robotic arm and an RGB-D camera to enable autonomous object detection and manipulation.
Co-Developer
AUG 2024 - OCT 2024
Utkrisht Sahai
Jeffrey Chen
The primary objective of this project is to develop an autonomous robotic system for precise object detection and manipulation, leveraging a 5-DOF robotic arm and RGB-D camera. This system integrates advanced kinematic modeling, computer vision, and calibration techniques to enable accurate manipulation of objects in real-time, providing valuable insights into autonomous system design and performance under varying conditions.

Ball-E was a mini basketball launcher, designed to be controlled by the RX-200 robotic arm, managing the yaw, pitch, loading, and triggering mechanisms. Cuboidal grasping blocks attached to rack gears allowed the arm to convert linear motion into rotational movement, enabling control over two axes for aiming.
We implemented a robust block detector that accurately identified and distinguished blocks based on their shapes and colors by processing depth and RGB images separately. Depth images were used to determine shape, position, and orientation, while RGB images, converted to HSV, provided color information. Contours were detected using calibrated depth images, reducing noise from lighting variations. Shape identification relied on area and aspect ratio, and HSV-based color segmentation further enhanced accuracy. By fine-tuning HSV thresholds and leveraging depth data for edge detection, our system achieved reliable block detection under diverse conditions.

Our system accurately detects block size, color, and orientation with over 99% classification accuracy. While performance is strongest near the center, slight localization errors increase near the edges—peaking at 20 mm. Calibration improves overall precision across the board.

We tested forward kinematics using known target positions and observed minimal tool tip deviation. Joint angles were verified through a teach-and-repeat routine across multiple points, demonstrating consistent performance over 10 cycles.
We achieved a record-breaking 20-block stack, surpassing the class record of 19 blocks. Our strategy utilized efficient inverse kinematics to place the arm's end effector at the optimal stacking point. Initially, we stacked 13 blocks vertically, transitioning to a 45-degree pick-and-place technique for the remaining blocks. This approach maximized stability and precision. With further optimization, lifting more blocks in each cycle could push the stack to 22–23 blocks.
All ROB-550 project teams consist of 3-4 individuals that work on an RX-200 robotic manipulator and the M-Bot over the duration of the semester.
