Delta Robot and Conveyor Example: A Glimpse into Industrial Automation
Part 1: What is a Delta Robot and What Does It Do?
In today's world, robotics is transforming how we teach and learn about automation. One such educational tool is the Delta Robot, a precision parallel robotic arm with three degrees of freedom (3-DOF), meaning it can move its end-effector in X, Y, and Z coordinates. The Delta Robot serves as a scaled-down version of the large robotic arms commonly used in industries but is primarily used for educational purposes in school laboratories.
Its main purpose is to show to students, particularly in Control and Automation fields, the fundamental principles of robotic arms, including kinematics and precision handling. Large industrial robotic arms are not feasible for lab environments due to their size and complexity, so the Delta Robot provides a more manageable and safer alternative for hands-on learning.
Part 2: Kinematic Equations – The Core of Robotic Motion
At the core of the Delta Robot's functionality lies kinematic equations, which describe the robot's motion. These equations allow us to calculate the exact position and orientation of the robot's end-effector based on joint angles. There are two primary types of kinematic equations:
Forward Kinematics: This method calculates the position of the robot’s end-effector based on the angles of its joints, effectively converting angles into X, Y, and Z coordinates.
Inverse Kinematics: This is the reverse process, where we specify the desired position of the end-effector, and the system calculates the necessary joint angles to achieve that position.
By mastering these equations, students can understand how robots are programmed to move accurately within their workspace.
Part 3: Conveyor Example Using a Delta Robot
In this educational setup, we applied the Delta Robot in a conveyor system example. A conveyor is a mechanical device that moves objects from one location to another. This project demonstrated how a Delta Robot can be integrated with a conveyor to recognize objects and perform precise handling tasks. While industrial robots are often seen in factories working alongside conveyors, in this case, the Delta Robot will be able to operate in a school lab environment, showcasing a similar yet smaller-scale interaction.
The custom conveyor designed for this setup allows the Delta Robot to detect various materials moving along the belt and place them in specific positions. One of the most intriguing parts of this process was object recognition—where the robot identifies objects, detects their shapes, and calculates their position in real-world coordinates.
Part 4: Converting Pixel to Real-World Coordinates
To accurately place objects, the Delta Robot must first convert the objects’ position from pixel coordinates (captured by the camera) into real-world coordinates that it can understand. We achieved this using the following formula:
Where:
OffsetX and OffsetY are real-world offsets,
PixelX and PixelY are the object's position in the camera's field,
CenterX and CenterY are the pixel coordinates of the camera's center,
ScaleX and ScaleY are the scaling factors converting pixel distance to real-world units.
By using this conversion, the robot can accurately map the detected object's position on the conveyor belt, ensuring it picks up and handles objects precisely.
Part 5: Detecting Shapes with the Delta Robot
In our object recognition process, the Delta Robot first captures an image of the conveyor system. Using image processing techniques such as thresholding and contour detection, the system identifies shapes like squares, triangles, and circles. Once a shape is detected, the robot calculates its centroid (center of the shape) and applies the pixel-to-real-world conversion formula to determine its precise location on the conveyor.
Below is the algorithm and pseudo code that explains how to detect the object.
Detect and Pixel to Real Coordinate Algorithm:
The Delta Robot first captures an image of the conveyor system in the object recognition process. Using image processing techniques such as thresholding, eroding and contour detection, it identifies shapes like squares, triangles, and circles. When a shape is detected, the robot calculates its centroid and applies the pixel-to-real-world conversion formula to determine its precise location. The algorithm begins by initializing the camera and capturing an image, which is then flipped horizontally. A perspective transformation is applied using predefined corner points, and the resulting image is converted to grayscale. Next, binary thresholding and erosion operations are used to enhance the shapes in the image. Contours are detected, and properties such as the centroid, bounding shapes, and aspect ratio are calculated for each contour.
If the Y-coordinate of the centroid is near a specified value, the type of shape is determined, and labels such as square, triangle, or circle are displayed on the console. The centroid of each shape is marked, and the current time is recorded. If the shape has not been logged before, its data is recorded with a timestamp, and the coordinates are converted to the robot's real-world system. When the coordinates are valid, they are printed along with the shape name, and the coordinates are returned. Throughout this process, the robot adjusts its movements based on the detected shape, allowing it to pick up and place objects accurately.
Detect and Pixel to Real Coordinate Pseudo Code:
FUNCTION detect()
INITIALIZE camera
READ frame from camera
FLIP frame horizontally
DEFINE centroids as predefined coordinates
DEFINE pts1 and pts2 for perspective transformation
APPLY perspective transformation to the frame
CONVERT transformed image to grayscale
APPLY binary threshold
ERODE the threshold image
FIND contours in the image
DEFINE line_y as350 DRAW horizontal line on the image
FOR each contour DO
APPROXIMATE contour shape
CALCULATE contour properties (centroid, bounding rectangle, aspect ratio)
IF centroid_y is near line_y THEN
PRINT width and height
DEFINE shape_name as empty string
DETERMINE shape based on sides and aspect ratio
IF square THEN DISPLAY "Square" ELSE IF triangle THEN DISPLAY "Triangle" ELSE IF circle THEN DISPLAY "Circle" DRAW circle at centroid position
GET current_time
IF shape is new THEN
LOG shape data with timestamp
CONVERT coordinates to robot's real-world system
IF coordinates are valid THEN
ADJUST and PRINT coordinates with shape name
RETURN coordinates and label
RETURN None
END FUNCTION
Depending on the detected shape, the robot can adjust its movements to ensure the object is picked up and placed correctly. For instance, if the robot identifies a square, it uses the centroid coordinates to guide its gripper to the correct position, showcasing the power of automation.
Conclusion: Bringing Automation to the Classroom
This project showed the Delta Robot's potential for students, highlighting its ability to perform tasks such as object recognition, precise motion, and shape detection—skills essential for real-world automation. Although the conveyor project has not yet been integrated into the educational environment, the progress made with the Delta Robot lays a promising foundation for future applications. It continues, and will continue, to serve as a valuable teaching tool, preparing students for the complexities of industrial automation systems.
In conclusion, this project shows the Delta Robot's potential for students, highlighting its ability to perform tasks such as object recognition, precise motion, and shape detection — the essential skills for real-world robotic process automation (RPA). Although this is a conceptual digital conveyor project, the progress made with the real Delta Robot hardware lays a promising foundation for real-world applications.
ACROME’s Delta Robot continues to be a valuable teaching tool, preparing students for the complexities of industrial automation systems.
References:
Craig, J. J. (2005). Introduction to robotics: Mechanics and control (3rd ed.). Pearson.
Oops! Something went wrong while submitting the form.
Discover Acrome
Acrome was founded in 2013. Our name stands for ACcessible RObotics MEchatronics. Acrome is a worldwide provider of robotic experience with software & hardware for academia, research and industry.