Friday, October 23, 2015

FURTHER WORK of DELTA ROBOT

FURTHER WORK

Here are summarization for some of the further steps which can be applied to the project later on for more improvement and development:
 Modify current design to increase working area of the robot to allow more space for additional applications.
 Usage of higher accuracy and power handling motors especially for the end-effector.
 Implement the robot for applications that required high accuracy and high speed such as 3D printer, laser engraving machines packaging in production line.
 Refine delta robot design for dynamic assembling, de-assembling and mobility. This permits further applications which can be considered commercially

CONCLUSION of DELTA ROBOT



CONCLUSION


In this project we studied problem of parallel robots in general particularly delta robots. Data collection, analysis and verification are carried out. Our effort leaded into enabling mechanical positioning of end effector by exploiting the concept of forward and inverse kinematics of delta robot.
The mathematical approval of kinematics equations which is used in Matlab are checked using open source online calculator [2] and have been validated. By then equations have been converted into C++ algorithms which are coded using Visual Studio.
To achieve parallelism into the proposed delta robot, two models have been designed. The first is a simple mechanical design and easy to implementation. However, this model is found to have small cube envelope area and poor coupling joints, thereby it has been set aside as backup model. The second model is designed with bear in mind first model disadvantages so that it is designed with a bigger cube envelope area and better joints which made it easier to control.
To verify the robustness and performance of the second model, a simulation has been carried out on the model using LabVIEW and SoildWorks. Simulation input data included several values of angles for several end effector positions (x, y, z). This allows verification of the inverse kinematics equations. Simulation Results approve the accuracy and correctness of the inverse kinematics such that allowed positions are only pointing inside the cube envelope area and other points outside that cube are mapped out.
We carried out Delta robot problem data collection, analysis, verification, manufacturing and testing. Our effort leaded into enabling mechanical positioning of end effector by exploiting the concept of inverse kinematics of delta robot.
Number of challenges appeared during manufacturing model ‘B’, for example the spherical joint shape and the length of robot’s arms. These problems are solved by adding
some modification on model ‘B’ and generate a new model which is called model ‘C’ whereas keeping advantages of model ’B’. After model ‘C’ had been fabricated, we started in testing phase.
Testing is carried out on model ‘C’ in order to validate the inverse kinematic equation of delta robot by generation MAH files for different geometric shapes and characters. These files are sent to the controller through LabVIEW. The drawing results which are drawn by the end-effector approve the accuracy and correctness of inverse kinematic equation.






Problems and Challenges of DELTA ROBOT

Problems and Challenges


Here, number of difficulties which are encountered during manufacturing and assembly process are described. We also draw several well-chosen tradeoff solutions. Problems and solutions are as follow:

After manufacturing a sample of few parts such as the elbow a torque and load problem revealed since the thickness of the old design of the elbow doesn’t overcome the links and end effector load, therefor the dimension of thickness increased from 6mm to 12mm, the old elbow is shown in Figure 4.31.

2- At the beginning of components collection stage of this project, getting of servo motors was a mission impossible especially from abroad markets. Thus we began replacing servomotor with stepper motors bearing in mind motion synchronization. We built a control circuit for this purpose. The circuit controls three stepper motors simultaneously using serial/USB communication and 4 PIC microcontrollers instead of Arduino UNO, Figure 4-32.
Later we managed to get three hoppy servo motors and consequently the project continued as planned.

When assembling links with elbow some friction and heavy clutching acquired, therefore a ball bearing is added in order to reduce friction, however another problem revealed which is the size of the ball bearing, the desired one is 12mm outer diameter to 6mm inner diameter, after extensive exploring we found this type of ball bearing in crank shaft of unknown motor in scrap field, Figure 4-33.

When spherical joint assembled with the closed end screw and using the normal hexagonal nuts a problem of limited movement appeared, however a new research for a better type of nuts which found in wall bolts nuts since they have thin thickness compared with the hexagonal nuts, Figure 4-34.
After assembling the delta robot a new challenge begin, since the position of end effector is higher than the down disk plat –work area- therefor the contact application is not applicable, and this challenge faced with adding height flexible plat that can be adjusted up or down with screws and nuts.









MANUFACTRING AND ASSEMBLYof DELTA ROBOT


MANUFACTRING AND ASSEMBLY

In this section, manufactured components and assembly process are explained.

Manufacturing
Some of the components like servo stand, elbows, plats, etc. require on hand manufacturing, however the robot stands and plates are made mostly from wood with care of accuracy in machining as possible
The following figures compare between the SoildWorks design and the manufactured component.

1- DownDisk Plat: This plat is the working area, where the end effector should reach the allowed points over it.

2- Upper/Base Plat: This plat is where the servo motors are stand.
- Circular Joint: Connect the end effector with the links, hence with the upper elbow.
Delta Stand: Hold the complete weight of the delta robot.
Servo Stand: a steel part separate between the upper/base plat and the servo as well it holds the servo from moving around






DELTA ROBOT :PROTOTYPING

PROTOTYPING

As simulation has verified and validated mathematical concept of the models, it is now time to build up a prototype that reflect the chosen design. This process reveals hidden problems and show in real the unseen failure points. It offers an environment for real-life application and calibration process. The implementation of the delta robot will be presented in this chapter.


COMPONENTS COLLECTIONS
In this section, all the mechanical and electrical components that do not need manufacturing process are described

Mechanical Components
Spherical Joint: 6mm Female Threaded Joint Bearing SI5T/K PHSA5 Right Hand Thread Rod End Bearing.
Lead Screw: 6mm open ended threaded screw

Wall Bolts, hexagonal nuts and rings: 6mm diameter

Ball bearing: Metal 12/6mm..



Electrical Components
Servo Motor: MG966R, datasheet enclosed in appendix A.


Arduino UNO: which is used due to its flexibility in controlling servomotors and it is considered enough for the delta robot motors.
Connector Circuit: a PCB14 board used as connector between the power, control and servo wires

DC Power Supply: Servo motors consume high current especially when they hold a torque, the minimum consumption of delta robot is about 0.7A for each motor, thereby the power supply should be able to provide at minimum 3A.






COST ANALYSIS of DELTA ROBOT

COST ANALYSIS 
Cost is one of the critical factors when considering the project optimality. Table 3-11 shows cost in NIS12 for parts and quantities of materials descripted in Table 3-9.
Although shown cost above is about (970 NIS) considering usage of low cost material such as wood and hoppy motors, the usage of stainless steel with CNC13 machining for sake of higher accuracy as an example may increase cost to over (1000 NIS). Also replacement of motors with higher accuracy ones will add another (240-500 NIS) to the total. A Delta Robot with reasonable resolution and accuracy will cost about (1500 NIS).


SIMULATION of DELTA ROBOT

To verify the equations in Chapter 2 -Inverse Kinematics Equations- and testing the generated angles of each motor within the limits of envelope area of model 'B' –as well verified in model ‘C’-, a control simulation is made based on several software's,
Matlab 2012a.
 Visual Studio 2010 -VSC++-.
 LabVIEW 2013 with SoftMotion module.
Each software tool is been used for a specific purpose, Matlab used to for quick calculation of the inverse kinematics equations while in the next step the m-file8 code converted onto C++ code to be able to run it on VSC++ which used to generate a MAH9 file which contain several angles for a movement steps that are needed for LabVIEW

:LabVIEW and SoftMotion Section

LabVIEW is a system-design platform and development environment for a visual programming language from National Instruments. Based on graphical programming.
LabVIEW software and the LabVIEW SoftMotion Module deliver graphical development for custom motion control applications. Which in this case a motion control of a predesigned Delta Robot SolidWorks model -model ‘B’-?
In any LabVIEW project there is two windows -parts-
The front panel window: which act as an interface for the End-User.
. The block diagram window: which contain the graphical code.
The Block Diagram
LabVIEW block diagram code is enclosed in Appendix C.
Matlab Section
As previously mentioned Matlab used for quick calculation of the inverse kinematics, a tiny GUI10 file written in Matlab finds the angles values of specific (x, y, z) point as in Figure 3-12.
M-file code is updated and converted into C++ enclosed in Appendix D

Visual Studio Section
In this section the code consist of two parts: sub-functions and main-function, the main function is the one which responsible for running the code and use the sub-functions in order to perform a specific task, in this case to generate the MAH file which contain the angles of each motor -inverse equations results-, while the sub-function is a code needed to be called do a specific task for the main function and most of the time ask for some input or return some values, e.g. the inverse sub-function ask for (x, y, z) and return (theta 1, theta 2, theta 3)

Figure 3-13 contain a generated angles (theta 1-3) for a fixed Z-axis and incrimination on X-axis and Y-axis with 0.5mm each iteration, therefore the motion will be a line from (x, y) = (0, 0) to (7, 7).

.




Control Circuit of DELTA ROBOT

Arduino
Arduino is an open-source electronics platform based on easy-to-use hardware and software. It's intended for anyone making interactive projects. It senses the environment by receiving inputs from many sensors, and affects its surroundings by controlling lights, motors, and other actuators.
Arduino can be instructed by writing compiling Arduino programming language code using Arduino 
Ardunio IDE has a built-in library for servo motors which provide more comfortable and easy way to 
control them.

Servo Motor

Controlling a servo motors is achieved by sending a digital signal to the motor’s control wire. The general idea is sending a square wave signal to the motor, where the wavelength of the wave sets the angle to which the motor will move [6].
For example, when sending a 1ms-pulsed square wave to the motor, it will move to its minimal angle – 0 degrees. When sending a 1.5ms-pulsed square wave to the motor, it will move to its middle angle – 90 degrees. When sending a 2ms-pulsed square wave to the motor, it will move to its ‘largest’ angle – 180 degrees, as shown in Figure 3-8
Brief note about the selection between different servo motors
One of the servo motors data in any servo data sheet is the material of the gearbox, more strong and robust means higher torque there for the old servo Hitec HS-475HB has gear box made of heavy duty resin can hold for (4.4 to 5.5) kg.cm torque while the required torque is around 9kg.cm which MG996R provide since it’s gear box is made of steel.

.

DELTA ROBOT Motor Selection

Motor Selection

Because of the wide variation of the motors types from DC to AC from Servo to Stepper, some Specifications-Limits must be specified and compare these motors and their specifications with them, which finally ended with comparing Servo Motor with Stepper Motor. These Specifications-Limits are:
 The acceptable holding torque.
 The speed of the motor in RPM6.
 Angular Positioning VS Linear Positioning.
 The complexity of the control circuit e.g. Micro-Stepping circuits.
Based on the above, Servo and Stepper motors features can be compared as shown in Table 3-10 
More Details about Servo Motors
A Servo is a small device that has an output shaft. This shaft can be positioned to specific angular positions by sending the servo a coded signal. As long as the coded signal exists on the input line, the servo will maintain the angular position of the shaft. As the coded signal changes, the angular position of the shaft changes.
Servo motors may be classified according to size or torque that it can withstand into mini, standard and giant servos. Usually mini and standard size servo motors can be powered by Microcontrollers directly with no need to external power supply or driver.
A typical Servo motor has 3 wires:
 Black wire: GND (ground).
 RED wire: +5V.
 Colored wire: control signal.
Advantages and Disadvantages of Servo Motors
Servo motors are used in many robotics applications, due to many reasons:
 Servo motors usually have a small size
 Servo motors have a large angular force (torque) comparing to their size
 Servo motors operate in a closed loop, and therefore are very accurate
 Servo motors have an internal control circuit
 Servo motors are electrically efficient – they required current is proportional to the weight of the load they carry.


.

DESIGN AND SIMULATION of DELTA ROBOT

Simulation is one of the most powerful methodologies to exchange information and show ideas by providing visual effects and have the ability to interaction. Therefore, the proposed design went through two stages, modeling and simulation

:MODELING
Model Designing
In this project, SolidWorks 2013 SP5.0 is used to design proposed solutions which are illustrated in three models:
1. Model A: Simple and first scratch.
2. Model B: Modified and follows the world concepts.
3. Model C: Modified in order to solve problems and implement new features.

Model A
The first model of the project based on an open source model [5] which made of the following parts
Model 'A' has the most simple delta robot design and parts, easy to build but because of the double 2 DOF that generated from the circular ends of the links a very careful control must take in mind to avoid links or motors failure.
In order to calculate the cube envelope area that can be covered by this robot some dimensions are needed:
. Base radius: Distance from center of machine to center of each motor shaft.
. End Effector -EE- radius: Distance from center of the EE to the center of EE joints.
 Bicep length: Distance from motor shaft to elbow.
 Forearm length: Distance from the EE joint to the elbow joint.
By using ref [2] calculator the cube envelope area dimensions are, Table 3-3
Model B
The second and modified model of the project based on envelope calculation from an open source calculator [2] according to the results from the calculator different dimensions changed while other joints replaced
Main changes on model A:
. Links from 200mm to 230mm
 Circular joints into Spherical joint
. Base radius from 100mm to 150mm





KINEMATICS DELTA ROBOT

Inverse kinematic
For a given position of the end effector, it is necessary to determine the corresponding angles of each of three arms in order to set the motors in proper position for grasping. This is known as inverse kinematics problem
The Figure 2-7 shows the kinematic scheme of delta robot which shows the key parameters of the robot that are:
 The side of the fixed triangle (f)
 The side of the end effector triangle ( e)
 The length of the upper joint (rf)
 the length of the parallelogram joint (re)
The reference frame will be chosen with the origin at the fixed triangle’s center of symmetry, as shown in Figure 2-7, so that the z-coordinate of the end effector will always be negative.
Because of the robot's design, joint 𝐹1𝐽1̅̅̅̅̅ can only rotate in the YZ plane, forming a circle centered in point 𝐹1 with radius 𝑟𝑓. Unlike 𝐹1, 𝐽1 and 𝐸1 are called universal joints, which means that 𝐸1𝐽1̅̅̅̅̅ can rotate freely relative to 𝐸1, forming a sphere centered in point 𝐸1 with radius 𝑟𝑒.
The intersection of sphere centered in point 𝐸1 and YZ plane is a circle centered in point 𝐸1′ with radius 𝐸1′𝐽1̅̅̅̅̅̅, where 𝐸1′ is the projection of 𝐸1 on YZ.
As shown in Figure 2-8, the two circles centered in 𝐹1 and 𝐸1′ respectively intersect in two points so the point 𝐽1 should be chosen as the intersection point with smaller y-coordinate. And if 𝐽1 is known, then theta1 can be obtained.






google analytic