What is a Delta Robot?
Delta robots are used in many industrial applications and are becoming increasingly popular in manufacturing applications.
A delta robot consists of three main motors at base (top of the robot) that drive the position of a platform. This is possible due to all of the arm joints being connected via ball joints.
Since the motors remain stationary at the base, the arms of the robot do not carry the weight of any additional motors. This allows delta robots to be very fast and accurate in their movements.
Inverse Kinematics
If we are tyring to move our end effector to a point (x,y,z), we can deduce the position of leg in the same plane as platform. Using the leg length (b) and arm length (a), can produce two circle functions
The intersection between the circles which will be the end point of arm. Using the end point of the arm, the requried angle of the arm can easily be calculated. Repeating this process for each arm allows all arm angular positions to be solved.
System Design
This delta robot was created using:
- 3 Hitec HS-755HB servos as the main base servos.
- 2 Tower Pro SG90 Micro Servos were used to control and wrist and gripper mounted to the platform.
- 6 Threaded rods
- 12 End Rod Ball Joints
- 1 Wooded Stand (to hold robot)
- 3 Custom steel arms
- 1 Raspberry Pi 2
- 1 Arduino Uno
- 1 USB webcam
The main control and computation is completed on the Raspberry Pi. Commands art sent over a serial USB connection to an Arduino Uno. The Ardunio Uno would then drive all 5 servos to their appropriate values. The webcam would send a live video feed back to the Raspberry Pi over USB to be processed for various applications.
The Build
Apart from the purchased products listed above, a considerable number of parts were self designed and created.
The arms of the robot are very important as they must be sturdy to limit flexing yet lightweight. Thin steal sheet metal was cut and grided down to a designed spec. The platform was designed in AutoDesk and 3D printed using a MakerBot Replicator 2x. The gripper was taken from a free 3D model found here. The stand and base self designed and constructed of wood. The “over-hang” frame is inteneded to ensuare a large workspace for the robot and increase visibility.
Software
The delta robot is powered via a Raspberry Pi running Python 2.7 to perform all of the commands and inverse kinematics calculations. Using Tkinter, a simple GUI was able to be generated to allow users to:
- have direct control of the servos
- inverse kinematics control
- gripper control
- ability to run sequences
Through software, smooth movement was able to be acheived and simple pick and place functions were able to be constructed.
OpenCV was the computer vison library used. This Python based library was able to all control of the webcam, identify and track oval shaped images and determine their orientation.
Final Result!
The final result was a large custom built delta robot that was able to pick and place dominoes in a particular orientation using computer vision.