How to create and control a Delta robot?
Hi, I'm working on a project in which I need to simulate a Delta robot in Gazebo and control it through ROS.
At the beginning I started to write the robot model using urdf/xacro file because it seems to be the suggested (or even more, requested!?) filetype by ROS. Ayway, I am now facing 2 "big" problems:
1: Since parallel linkages are not allowed by URDF I have to find a way to connect the"movable plate" of the Delta to the 3 forearms (this implies 3 parent links for a unique link). I've tried using the <gazebo> tag to insert the extra joints but they seem to be non-effective (I can see them in the joint list inside gazebo but they don't connect the desired links, as if they were not physically there..) I've used this sintax:
<gazebo>
<joint name='joint_lower_2' type='ball'>
<parent>link2_1</parent>
<child>end_effector</child>
</joint>
</gazebo>
2: I need to specify the "middle" joints (the ones connecting upper links to lower links) and the "lower" joints (the ones connecting forearms to end-effector/movable plate) as ball joints but this type is not allowed in urdf format. So I am forced to declare these joints in some way (for example, continuous). My idea was to, using the gazebo reference tag, overlap their definitions but this seems to be non-effective too (the joints remain of the type "continuous" in the joint list in Gazebo). Like this:
<joint name="joint_middle_2" type="continuous">
<parent link="link1_2"/>
<child link="link2_2"/>
<origin xyz="${link_upper_lenght} 0.0 0.0" rpy="0.0 0.0 0.0"/>
<axis xyz="0.0 1.0 0.0"/>
<dynamics damping="${damping}" friction="${static_friction}" />
</joint>
<gazebo reference="joint_middle_2" type="ball">
</gazebo>
In conclusion, how could I build a proper delta robot model that can be controlled by ROS nodes like "normal" serial robots? Should I have to switch to sdf file format? In this case, I will still be able to control the robot like if it were written in urdf?
Thanks to anyone which will help me!
hello there have you find a solution for your problem? i'm having the same problem as you