Hybrid delta robot
10940588 ยท 2021-03-09
Inventors
Cpc classification
B25J9/1664
PERFORMING OPERATIONS; TRANSPORTING
B25J17/0275
PERFORMING OPERATIONS; TRANSPORTING
B25J9/0009
PERFORMING OPERATIONS; TRANSPORTING
B25J9/1623
PERFORMING OPERATIONS; TRANSPORTING
International classification
Abstract
The invention relates to an improved robotic arm apparatus and associated method which improves a robot configured in a delta arrangement. The robotic arm apparatus is arranged with three substantially identical movable arm assemblies connected together with three linear actuators in a triangular configuration such that each end of each linear actuator has at least one translational degree of freedom.
Claims
1. An improved delta-configured robotic arm apparatus (100) comprising: a planar base (110) with three rotatable attachment points spaced at equal angular intervals around a common midpoint; three substantially identical movable arm assemblies, each movable arm assembly rotatably attached to one of the rotatable attachment points, comprising a rigid bellcrank (120) having a joint end rotatably attached to the respective rotatable attachment point, an actuator end and a lower arm end, and a lower arm pair (140) having a joint end rotatably attached to the bellcrank lower arm end and a rotatable platform attachment point end; an end effector platform (180) comprising three attachment points, each platform attachment point rotatably attached to a respective lower arm rotatable platform attachment point end; and three substantially identical linear actuators (161, 162, 163), each of the linear actuators having two ends, each end connected between two of the bellcrank actuator ends, such that the three linear actuators are disposed in a triangular arrangement.
2. The robotic arm apparatus of claim 1, further comprising: a power source (1602) configured to supply power independently to each of the three linear actuators; and a hardware controller (1604) that is programmed to controllably apply the power to each linear actuator for the purpose of positioning the end effector platform at a desired position with respect to the base.
3. The robotic arm apparatus of claim 2, further comprising a computer program product in communication with the hardware controller, the computer program product executing software instructions for converting an input of the desired end effector platform position to a length of each linear actuator, wherein the hardware controller applies power to each linear actuator to establish each length.
4. The robotic arm apparatus of claim 3, wherein the computer program product comprises a transform matrix function for the converting of the input of the desired end effector platform position to the length of each linear actuator.
5. The robotic arm apparatus of claim 3, wherein the computer program product further comprises software instructions for generating a path of the end effector platform from a first position to the desired position.
6. The robotic arm apparatus of claim 1, wherein each end of each linear actuator has at least one translational degree of freedom.
7. The robotic arm apparatus of claim 6, wherein at least one of the linear actuator ends comprises a universal joint.
8. The robotic arm apparatus of claim 6, wherein at least one of the linear actuator ends comprises a spherical joint.
9. The robotic arm apparatus of claim 6, wherein at least one of the linear actuator ends comprises an offset joint having a pair of revolute joints with each joint having an axis that is non-intersecting with the other joint axis, and further wherein the respective linear actuator comprises a shaft which is configured to either rotate or twist along a shaft longitudinal axis.
10. The robotic arm apparatus of claim 1, wherein the rigid bellcrank comprises one of a triangular shape, a trapezoidal shape, and a truss assembly.
11. The robotic arm apparatus of claim 1, wherein a center of mass of the apparatus not including the planar base lies within a volume bounded by the planar base attachment points and on the side of the common midpoint.
12. The robotic arm apparatus of claim 1, wherein the movable arm assemblies and the linear actuators are configured to enable the end effector platform to be positioned on both sides of a plane defined by the planar base three rotatable attachment points.
13. The robotic arm apparatus of claim 1, wherein the lower arm comprises an assembly of two substantially parallel lower arm members.
14. The robotic arm apparatus of claim 13, wherein the lower arm joint end comprises an offset joint, the lower arm joint end having at least two rotational degrees of freedom.
15. The robotic arm apparatus of claim 1, wherein the lower arm joint end comprises a rotary joint.
16. The robotic arm apparatus of claim 15, wherein the lower arm joint end rotary joint comprises at least two rotational degrees of freedom.
17. A method for controlling an improved robotic arm system arranged in a modified delta configuration, comprising the steps of: providing (1304) a delta-configured robotic arm apparatus as described in claim 2; automatically calculating (1306) a desired position for the end effector platform; applying power (1310) to one or more of the arm apparatus linear actuators based on the automatically calculating step; establishing a desired length (1312) of the one or more linear actuators responsive to the applying power step; and positioning (1314) the end effector platform in the desired position responsive to the establishing step.
18. The method of claim 17, wherein the automatically calculating step comprises executing computer software instructions to transform the desired position in a machine coordinate system to an arm coordinate system.
19. The method of claim 18, wherein the automatically calculating step further provides an output of the desired length of each of the linear actuators corresponding to the desired position in the arm coordinate system.
20. The method of claim 17, further comprising the steps of: obtaining a desired end effector platform velocity (1318); automatically determining a linear actuator rate of change (1320) for each of the linear actuators according to the obtaining step; and powering the linear actuators based on the automatically determining step to establish a desired velocity of the one or more linear actuators.
Description
IN THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
DETAILED DESCRIPTION OF THE EMBODIMENTS
(17) Now turning to the illustrations,
(18) Affixed to base 110 are three attachment points 131, 132, 133, preferably spaced at equal, i.e. 120 degree, intervals around a common interior midpoint such as the base center point as illustrated in
(19) The apparatus includes three substantially identical movable arm assemblies, each rotatably attached to one of the base rotatable attachment points 131, 132, 133. Each arm assembly comprises several elements. Bellcrank arm elements 121, 122, 123 each include a joint end rotatably attached to one of the base attachment points at 131, 132, 133.
(20) Each bellcrank arm element further includes two other attachment points. Bellcrank-to-actuator end joints 151, 152, 153 rotatably connect each bellcrank to two of three linear actuators 161, 162, 163. The arrangement enables the rotating movement of each bellcrank about its base attachment point caused by a change in controlled length of the linear actuators.
(21) The third attachment point for each bellcrank arm element is a bellcrank-to-lower arm joint 171, 172, 173, also indicated generically as joint 170. Each bellcrank-to-lower arm joint 171, 172, 173 is disposed to rotatably attach to a lower arm 141, 142, 143. As in prior art delta robots, each lower arm is disposed as an inner arm pair that forms a parallel linkage. The combined action of the three inner arm pairs restricts the end platform 180 to translational movement only with no rotation. Each lower arm 141, 142, 143 also comprises a joint 181, 182, 183 for connecting to end effector platform 180. Joint 181, 182, 183 may be similar to joint 171, 172, 173.
(22) End platform 180 comprises the end effector for the robot on which tooling, pick devices, coating spray heads, etc. may be mounted. Platform 180 may include prior art features that allow for attachment of such tooling, the attachments not shown. End platform 180 is rotatably attached to each lower arm attachment point such that the platform preferably translates throughout the operating volume during operation, but does not rotate.
(23) The length of each of linear actuators 161, 162, 163 are also referred to later and in
(24)
(25) Controller 1604 sends control signals to the power source 1602, which independently drives each of the linear actuators 161, 162, 163 to a desired length. The independently controlled power supplies 1602a, 1602b, 1602c are shown in
(26) Power source 1602 may be battery powered. Of course, power source 1602 may also be powered from an external power source 1606.
(27) The computer controller 1604 is preferably a hardware computer processor and associated circuitry that controllably applies power to each of the linear actuators to position the end platform at the desired position. Electronic control software and/or firmware are preferably in the form of hardware computer processors executing software instructions, along with associated power and control circuitry. Feedback control algorithms taking input from a position sensor, shown as FB in
(28)
(29)
(30) i. Attachment point 131 is disposed on the left side on the xm axis.
(31) ii. Attachment point 132 is disposed on the right side below the xm axis.
(32) iii. Attachment point 133 is disposed on the right side above the xm axis.
(33) Planar base 110 is shown as a circle to simplify illustration and explanation. It could alternatively be built in other shapes, such as a triangle or hexagon, without any change in function.
(34) For purposes of illustration in developing the control equations, each arm, for example bellcrank arms 121/122/123, connected to points 131, 132, 133 defines its own local coordinate frame. The subscript i refers to the respective angle or axis 1, 2, or 3 at points 131, 132, 133. The reference frames for each location i are related to the machine's coordinate system as follows:
(35) The translation in x.sub.m and y.sub.m is relative to the machine origin (0,0, 0).
(36) The rotation (angles a.sub.i) about z.sub.i is such that x.sub.i intersects the machine origin.
(37) Each z.sub.i is parallel to z.sub.m.
(38) Each y.sub.i completes the right-handed coordinate frame.
(39) Each joint 131, 132, 133 is revolute, allowing one rotational degree of freedom (DOF) about the y.sub.i axis. It can be seen from
(40) Small variations in position or rotation of this arrangement may be measured and compensated for in the control algorithms to be described. This includes variation in the tilt rotation about an x.sub.i axis. However, larger variations may restrict the range of motion through interference between moving parts, and may cause singularities in which the arms fall over or require excessive force to move. Variations from the specified arrangement thus should be avoided.
(41)
(42) Arm 120 also includes a bellcrank-to-actuator end joint 150 (also see point A on the control geometry
(43) Arm 120 also includes a bellcrank-to-lower arm joint 170, which rotatably receives the lower arm pairs 141, 142, 143 at a position to each side of arm 120. The position of joint 170 corresponds to point E on the control geometry
(44) In the
(45) The bellcrank 120 angle b formed by the joints 130, 150 and 170 (from AB to BE) converts the horizontally actuated joint motion as driven by the linear actuators to a position, direction, and speed suitable for positioning end platform 180. Thus joint 170 (or point E) travels through an arc with the same angular width as joint 150 A, and similarly loosely approximates straight line motion.
(46)
(47) In order to move the end platform 180 to a desired position, control software, such as that used by controller 1604 in
(48) The inventive arrangement shown in the preceding FIGS. has several advantages. The fixed base 110 may be smaller than for those apparatus' which require the increased structural integrity necessary for providing suitable attachment points for fixed actuator ends. The force applied by each linear actuator is applied equally to each of its two attached arms. Mechanical advantage may be improved from having two actuators to provide the force required at each arm. And mechanical advantage may be improved because each actuator has twice the travel length as compared to a one-end-fixed configuration.
(49) Another advantage of the inventive delta arrangement is that the actuators may be disposed near the perimeter of the work volume, leaving the central area open and allowing the bellcrank-lower arm joint 170, i.e. point E, and the links to the end platform 180 to move upward without obstruction. The inventive design enables the end effector platform 180 to be positioned on both sides of the plane defined by the planar base three rotatable attachment points.
(50)
(51)
(52)
(53)
(54) One optimized design of the hybrid delta robot includes a spherical joint on each bellcrank arm at joint 150 that allows 3 rotational degrees of freedom (DOF) movement between the arm and each of its connected linear actuators. This would allow the actuator to work in pure tension or compression and contribute to accurate motion, but may be somewhat more complex and difficult to manufacture. Several alternative designs for the bellcrank-to-actuator end joint 150 are thus presented below in
(55) Each bell-crank-to-linear actuator joint 150 design shares approximately the same design configuration:
(56) 1. The orientation of the internal axes of the joint 150 remains approximately aligned with the local coordinate frame. The arm rotates only about yi and the actuators rotate primarily about zi with small deflections about xi and yi.
(57) 2. The nominal angle between linear actuators is about 60 degrees (one vertex of an equilateral triangle).
(58) 3. The relative motion between arms produces approximately +/12 degrees rotation per linear actuator about the zi axis.
(59) 4. The motion of a single arm produces approximately +/30 degrees rotation at its Ai joint 150 about the yi axis.
(60) 5. The relative motion between arms produces approximately +/3 degrees rotation at each Ai joint 150 about the xi axis.
(61)
(62) The
(63) Because the triangular arrangement of the linear actuators holds the z.sub.i axes parallel, any common offset between actuators and the center of the universal joint cancels out and the control algorithms need no corrections.
(64)
(65)
(66)
(67)
(68) The
(69) Other rotation sequences for reduced/eliminated twist to avoid gimbal lock fall within the scope of this embodiment. For example, the control software should correct for the translation offsets of this design actuator end joints. Since the offsets are parallel to y.sub.i, they are invariant with respect to arm rotation and may be pre-computed once in the machine coordinate frame. The control software may also correct for axial twisting if the actuator's length changes due to the twisting, for example if a coarse pitch lead screw with the nut's orientation dependent upon one end is adopted.
(70) The addition of springs, counterweights and/or cables may also be contemplated to improve the inventive design's performance. The illustrations imply a hydraulic or electrically driven cylinder type of actuator capable of supplying both compression and tension forces. Adding springs or counterweights that act to pull the bellcrank arms outwards would allow the use of cables, in tension only, which act as actuators.
(71) Joints adopted in the designs thus far are universal-type or spherical-type joints having intersecting axes. In an embodiment of this invention, two non-intersecting axes of rotation, separated with a short offset link, can reduce manufacturing cost at the expense of a small increase in run-time computational complexity and a small reduction in the extents of the work volume. The overall functionality is otherwise the same as in the previously described hybrid delta robot embodiments.
(72)
(73) One goal in selecting the style of joints used in a hybrid delta robot is a minimized variation in length between any two points. For example, the effective length of link EH, see
(74) Embodiments using offset links allow the use of simple rotational joints. Ball bearings may be used, ideally with enough axial load capability to allow preload which eliminates all play in the joint. Low cost hinge pins may be adopted, but these require close tolerances in the radial dimensions. Pins must be firmly attached on one side of the joint, but should also be easily removable as they are expected to wear over time.
(75)
(76) If a single threaded joint is used, additional kinematics corrections may be desired to correct for the change in position along the axis of rotation as the two sides rotate. The effects may also be reduced by selecting a fine pitch thread. The link between pins 1204 and 1208 requires no corrections because the threads at either end have identical pitch. The parallel linkage ensures rotation at the same rate about pins 1204 and 1208 for each arm, which keeps the gaps the same, which means the lower arms 140/140 are always parallel to the line between the end joints at arm 120 and end platform 180. A similar relation holds for the set of joints B, E, and H as shown in
(77) Threaded joints can also be used on the set of three z axis joints at A. Each threaded pin connects two actuators with the rest of the A joint mechanism. Each actuator remains nominally parallel to the plane through the three A joints. The benefits of a threaded joint include a low initial cost, easy removal for service or replacement, supports both radial and axial loads, has a large bearing surface area, and with appropriate materials selection the pin can designed to be sacrificial both for wear and to break first under excess load.
(78) Control Algorithms
(79)
(80) The geometry variables may be described in Table 1 below:
(81) TABLE-US-00001 TABLE 1 a. Geometry variables: B Base position, defines the origin (0, 0, 0) of the local coordinate frame. E End effector of the actuator/arms part of the robot; e.g. where the lower arm pairs attach to the bellcrank joint 170. H Position of the joint between the lower arm pairs and the end platform 180. G Auxiliary point: projection of H into x-z plane (i.e. same as H but with y coordinate set to zero). Note that angle EGH is 90 degrees. T The common Tool point whose position is being controlled. .sub.1 Angle of BE above x axis. .sub.2 Angle of EG above the x axis. .sub.3 Angle from EG to EH. Note .sub.3 is measured in the plane defined by point E, G, and H; and is positive when the y coordinate of H is positive. Auxiliary variables: c.sub.k cos(.sub.k) s.sub.k sin(.sub.k) X.sub.s One of the 4 4 transformation matrices from a local coordinate frame to the machine coordinate frame. Accounts for translation, rotation, and tilt of the local frame relative to the machine frame. Note it never rotates to follow arm motion. Inv(X.sub.s) One of the 4 4 transformation matrices from machine coordinate frame to the local coordinate frame, pre-calculated as the inverse of Xs.
Inverse KinematicsPosition
(82) The inverse kinematics for position take as input the desired position of the tool point in the machine coordinate frame (Tm), and outputs the required lengths d1, d2, d3 respectively of the three actuators 161, 162, 163. The approach is to independently solve each arm as a serial linkage, and then calculate the distances between pairs of Ai joints. Note that solving the serial linkages in this case is less complex than for standard delta, and so computer computations can be more efficient and use less computation time. Because angles are not driven directly by actuators, they can be defined for convenience of solving, rather than matching actuated joint angles, and inverse trigonometric functions need not be calculated.
(83) The method for determining the positioning parameters for each arm i is outlined below. Note that the m subscripts in steps 1, 2, and 9 indicate coordinates in the machine coordinate frame, and that steps 3 through 8 use the local coordinate frame defined by the bellcrank arm. This coordinate transformation simplifies the 3D problem into 2D calculations. For a given input tool position Tm in the machine coordinate frame, the steps are repeated for each of the three bellcrank arms, each output Am being one of A1, A2, or A3 in the machine coordinate frame. The steps for positioning the tool on the end effector platform 180 comprise the following:
(84) 1. Transform Tm to Hm. Since the end platform does not rotate, this is a trivial translation of the coordinates.
(85) 2. Transform to the local coordinate frame: H=Inv(Xs).Math.Hm
(86) 3. Solve sides of triangle EGH:
(87) G=H with y coordinate set to 0.
(88) GH=absolute value of the y coordinate of H.
(89) EH is known (length of lower arm pairs).
(90) Find length EG using the Pythagorean theorem.
(91) 4. Solve for angle EBG:
(92) Define e=length BG, b=length EG, g=length BE.
(93) Define cb=cos(angle EBG) and sb=sin(angle EBG).
(94) Solve for cb using the law of cosines: b.sup.2=g.sup.2+e.sup.22.Math.g.Math.e.Math.cb.
(95) Solve for sb using the trigonometric identity: sb.sup.2+cb.sup.2=1.
(96) 5. Solve for rotation of triangle EBG:
(97) Using length BG and the x and z coordinates of G,
(98) solve for sin and cos of the angle of BG above the x axis.
(99) Define sg=sin(angleBG)/BG=G.Math.z/e and cg=cos(angleBG)/BG=G.Math.x/e.
(100) 6. Solve for s1 and c1 using complex math:
(c1+j.Math.s1)=(cb+j.Math.sb).Math.(cg+j.Math.sg)
(101) 7. Solve for E:
E.sub.x=BE.Math.c1
E.sub.y=0
E.sub.z=BE.Math.s1
(102) 8. Solve for A:
(103) The complex coefficient, K, is pre-computed when the arm is in its neutral position:
K=(A.sub.x+j.Math.A.sub.z)/(E.sub.x+j.Math.E.sub.z)
(104) For any rotation of the arm, the positions of the two joints remain related through the equation:
(A.sub.x+j.Math.A.sub.z)=K(E.sub.x+j.Math.E.sub.z).
(105) For this step, refer to any of the bellcrank arm diagrams.
(106) 9. Solve for A.sub.m:
A.sub.m=X.sub.s.Math.A
(107) If the robot is not built with exact spherical joints, corrections may need to be made to the Ai positions before calculating distances between them. For example, the joint design in the illustrated embodiment of
(108)
(109) The additional geometry variables may be described in Table 2 below:
(110) TABLE-US-00002 TABLE 2 Geometry variables: E Offset end effector of the actuator/arms part of the robot; e.g. where the lower arm pairs attach to the bellcrank joint 170. H Offset position of the joint between the lower arm pairs and the end platform. G Offset of the auxiliary point: projection of H into x-z plane (i.e. same as H but with y coordinate set to zero). Note that angle EGH is 90 degrees.
Inverse KinematicsPositionAlternative Embodiment for Offset Links
(111) The steps for positioning the tool on the end effector platform 180 with offset joints is similar to the steps outlined above with no offset joints. Step 3 above may be modified for offset joint calculations to comprise the following to solve sides of triangle EGH:
(112) The length GH=absolute value of the y coordinate of H.
(113) The length EH is known (length of lower arm pairs, excluding offset links).
(114) Find length EG using Pythagorean theorem.
(115) G=H with y coordinate set to 0.
(116) Find length EG by adding offset link lengths to EG.
(117) Inverse KinematicsVelocity
(118) Calculating the velocity of an actuator requires calculating the velocity of the Ai joint at each end, projecting those velocities onto the line between the two joints, and summing to get the net rate of change of the actuator length. The positions in the local coordinate frame of points B, E, G, and H need to have been calculated first. It may be noted that the joint designs shown in
(119) A 33 Jacobian matrix may be created establishing the rate of change of the end platform's Cartesian coordinates over time (dx/dt, dy/dt, dz/dt) to the rate of change of the three angles (d.sub.1/dt, d.sub.2/dt, d.sub.3/dt). For the desired end platform velocity, the equation is solved for d.sub.1/dt (the other two angular velocities are not needed). Note that the sines and cosines of the angles can be calculated directly from the current joint coordinates: it is not necessary to use inverse trig functions.
(120) Using small angle approximations, the velocity at joint E is at a right angle to BE with magnitude length BE.Math.d.sub.1/dt. The velocity at joint A is at a right angle to BA with magnitude length BA.Math.d.sub.1/dt.
(121) The
(122) The calculations described above may be implemented into computer software instructions, the instructions to be executed in computer hardware, such as controller 1604, to control the hybrid delta robot operation. It is understood that the computer control may be in different forms as is common in the art, such as in ASICs, FPGAs, standard computer processors and memory, etc.
(123) The above described calculations may be incorporated into a method 1300 for controlling an improved robotic arm system arranged in a modified delta configuration. The method is illustrated in
(124) An automatically calculating step 1306 establishes the needed linear actuator lengths for a desired position for the end effector platform or tool. This step takes an input from a desired position signal. See C in
(125) If the tool path to be followed is important to the particular application, controller 1604 may optionally be enabled to calculate a sequential set of linear actuator lengths in order to establish a desired path. Path calculating step 1308 may be executed automatically by controller 1604 either during or prior to initiating the robot routines.
(126) When a particular tool position is desired, controller 1604 begins an applying power step 1310 to the one or more of the arm apparatus linear actuators. The amount of power supplied and the rate of power applied from the controlled power supply 1602a/b/c may be based on the automatically calculating step 1306 and optionally step 1308. At this time, the tool begins to move toward the desired position as the linear actuators begin to change length.
(127) In some embodiments, the accuracy of the robot mechanism and the precision required by the task is sufficient to allow delta robot operation without the need for feedback of the tool position to the controller 1604. In other embodiments, tool position feedback may be necessary in order to confirm proper tool location. Feedback may be supplied via input FB in
(128) Method 1300 may optionally comprise functions related to the desired velocity of the tool during operation. Thus a step 1318 of obtaining a desired end effector platform velocity may be performed substantially in parallel to calculating the tool desired position. The desired velocity, like the desired position, may be obtained from an external signal C to the controller 1604, or may be pre-programmed into controller memory.
(129) Responsive to the desired tool or platform 180 velocity that is established at obtaining step 1318, the method at step 1320 automatically determines the desired rate of length change for each linear actuator. Controller 1604 then adjusts the applying power step 1310 to drive the linear actuators to the desired position at the desired rate.
(130) The inventive method concludes with the step 1314 of arriving at the desired end effector platform 180 and/or its tool position when the linear actuator lengths are established responsive to the establishing step. At this step, the tool is in the desired position, and may further function as needed for picking, depositing, cutting, etc.
(131) Modifications to the device, joint method, and displays as described above are encompassed within the scope of the invention. For example, various configurations of the positioning arm assembly which fulfill the objectives of the described invention fall within the scope of the claims. Also, the particular appearance and arrangement of the apparatus may differ.
(132) TABLE-US-00003 Table of Elements - hash marks in Figures indicate alternate embodiments 10 Prior art delta arm robot 100 Delta-configured robotic arm apparatus 110 Planar base 120 Bellcrank 121 First bellcrank 122 Second bellcrank 123 Third bellcrank 130 Base-to-bellcrank rotatable attachment point 131 First rotatable attachment point 132 Second rotatable attachment point 133 Third rotatable attachment point 140 Lower arm 141 First lower arm 142 Second lower arm 143 Third lower arm 150 Bellcrank-to-actuator end joint 151 A1 bellcrank-to-actuator end joint 152 A2 bellcrank-to-actuator end joint 153 A3 bellcrank-to-actuator end joint 160 Linear actuator 161 d1 First linear actuator 162 d2 Second linear actuator 163 d3 Third linear actuator 170 Bellcrank-lower arm joint 171 First bellcrank-lower arm joint 172 Second bellcrank-lower arm joint 173 Third bellcrank-lower arm joint 180 end effector platform 181 Lower arm-end effector platform joint 182 Second lower arm-end effector platform joint 183 Third lower arm-end effector platform joint 1000 Coordinate system for hybrid delta robot 1010 Alternate coordinate system for hybrid delta robot 1200 lower arm assembly 1202 Threaded pin 1204 Second threaded pin 1206 Third threaded pin 1208 Fourth threaded pin 1210 L shaped part, bell crank end offset link 1220 L shaped part, platform joint end offset link 1300 Method for controlling a delta arm robot 1302 start step 1304 Providing step 1306 Automatically calculating step 1308 Path calculating step 1310 Applying power step 1312 Establishing a desired length step 1314 Positioning end effector platform step 1318 Obtaining desired velocity step 1320 Automatically determining desired velocity for platform step 1600 Arrangement for controllers and power amplifiers for the actuator motors 1602 Controlled power source 1602a Controlled power supply, first linear actuator 1602b Controlled power supply, second linear actuator 1602c Controlled power supply, third linear actuator 1604 Hardware controller 1606 External power source