Links, Joints and Hierarchy of a 3 DoF Delta Robot (Parallel robot) | CoppeliaSim (V-REP)
Channel: Leopoldo Armesto
Date: 2020-07-16

This video helps to identify links and joints of a delta robot with 3 DoFs. It also explains the hierarchy used to solve the inverse kinematics of the robot and control its X, Y and Z positions. If you want to contribute to the development of these tutorials, please buy me a coffee:
https://paypal.me/leoarmesto
This video is part of a set of CoppeliaSim video tutorials (V-REP) used in robotics courses at the Technical University of Valencia.
The robot design has been created by the student Carlos Moreno as part of his final degree project. Download the robot file:

https://roboticafacil.es/coppeliasim/delta_robot/delta_robot_kinematics.zip


Lua script to control the robot tip:
function onXChange(uiHandle, id, newValue)
    position[1]=newValue/2000
    sim.setObjectPosition(target,home,position)
end

function onYChange(uiHandle, id, newValue)
    position[2]=newValue/2000
    sim.setObjectPosition(target,home,position)
end

function onZChange(uiHandle, id, newValue)
    position[3]=newValue/2000
    sim.setObjectPosition(target,home,position)
end

function sysCall_init()
    -- do some initialization here
    target=sim.getObjectHandle('ref_point')
    home=sim.getObjectHandle('home')
    position=sim.getObjectPosition(target,home)
    ui=simUI.create('&lt;ui enabled="true" modal="false" title="delta_robot" closeable="true" layout="vbox" placement="relative" position="20,20"&gt;' ..
    '&lt;label enabled="true" text="X"&gt;&lt;/label&gt;' ..
    '&lt;hslider enabled="true" minimum="-100" maximum="100" on-change="onXChange"&gt;&lt;/hslider&gt;' ..
    '&lt;label enabled="true" text="Y"&gt;&lt;/label&gt;' ..
    '&lt;hslider enabled="true" minimum="-100" maximum="100" on-change="onYChange"&gt;&lt;/hslider&gt;' ..
    '&lt;label enabled="true" text="Z"&gt;&lt;/label&gt;' ..
    '&lt;hslider enabled="true" minimum="0" maximum="200" on-change="onZChange"&gt;&lt;/hslider&gt;' ..
    '&lt;/ui&gt;')
end

function sysCall_actuation()
    -- put your actuation code here
end

function sysCall_sensing()
    -- put your sensing code here
end

function sysCall_cleanup()
    -- do some clean-up here
end