<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-gb">
	<link rel="self" type="application/atom+xml" href="https://pybullet.org/Bullet/phpBB3/app.php/feed/topic/13123" />

	<title>Real-Time Physics Simulation Forum</title>
	
	<link href="https://pybullet.org/Bullet/phpBB3/index.php" />
	<updated>2020-12-09T14:09:21+00:00</updated>

	<author><name><![CDATA[Real-Time Physics Simulation Forum]]></name></author>
	<id>https://pybullet.org/Bullet/phpBB3/app.php/feed/topic/13123</id>

		<entry>
		<author><name><![CDATA[Dyu]]></name></author>
		<updated>2020-12-09T14:09:21+00:00</updated>

		<published>2020-12-09T14:09:21+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=43217#p43217</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=43217#p43217"/>
		<title type="html"><![CDATA[Combining URDFs while keeping joint limits]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=43217#p43217"><![CDATA[
We are developing a PyBullet robotic toolbox where we can dynamically combine manipulators with different grippers. To this end, our objective is to combine the manipulator and gripper URDFs and load the combined URDF.<br><br>We use the following example to combine URDFs: <a href="https://github.com/bulletphysics/bullet3/blob/master/examples/pybullet/gym/pybullet_utils/examples/combineUrdf.py" class="postlink">https://github.com/bulletphysics/bullet ... ineUrdf.py</a><br><br>We subsequently converted the <strong class="text-strong"><em class="text-italics">revolute</em></strong> joints to <strong class="text-strong"><em class="text-italics">continuous</em></strong> joints as per: <a href="https://github.com/bulletphysics/bullet3/issues/2839" class="postlink">#2839</a><br><br>But now, during the robot control (e.g. IK computation, joint control, etc.), we want to take into account the joint limits, velocity limits, etc. Studying the <strong class="text-strong"><em class="text-italics">kuka_iiwa/model.urdf</em></strong> and <strong class="text-strong"><em class="text-italics">combined.urdf</em></strong>, we observe the following differences:<br><br><strong class="text-strong"><em class="text-italics">kuka_iiwa/model.urdf</em></strong>:<br><div class="codebox"><p>Code: </p><pre><code>&lt;!-- joint between link_5 and link_6 --&gt;  &lt;joint name="lbr_iiwa_joint_6" type="revolute"&gt;    &lt;parent link="lbr_iiwa_link_5"/&gt;    &lt;child link="lbr_iiwa_link_6"/&gt;    &lt;origin rpy="1.57079632679 0 0" xyz="0 0 0.2155"/&gt;    &lt;axis xyz="0 0 1"/&gt;    &lt;limit effort="300" lower="-2.09439510239" upper="2.09439510239" velocity="10"/&gt;    &lt;dynamics damping="0.5"/&gt;  &lt;/joint&gt;</code></pre></div><strong class="text-strong"><em class="text-italics">combined.urdf</em></strong>:<br><div class="codebox"><p>Code: </p><pre><code>&lt;joint name="lbr_iiwa_joint_6" type="continuous"&gt;&lt;parent link="lbr_iiwa_link_5"/&gt;&lt;child link="lbr_iiwa_link_6"/&gt;&lt;dynamics damping="1.0" friction="0.0001"/&gt;&lt;origin rpy="1.57080 -0.00000 0.00000" xyz="0.00000 0.00000 0.21550"/&gt;&lt;axis xyz="0.00000 0.00000 1.00000"/&gt;&lt;/joint&gt;</code></pre></div><br>The field <strong class="text-strong"><em class="text-italics">limit effort</em></strong> is missing and the <strong class="text-strong"><em class="text-italics">dynamics damping</em></strong> parameter is different.<br><br>So here are our questions:<br><ol style="list-style-type:decimal"><li>How would you recommend to proceed to incorporate the limits info such that they're taken into account for robot control, e.g. IK computation?</li><li>If we manually add the <strong class="text-strong"><em class="text-italics">upper_limits</em></strong>, <strong class="text-strong"><em class="text-italics">lower_limits</em></strong> and <strong class="text-strong"><em class="text-italics">joint_ranges</em></strong> in the Python script, will they be taken into account during IK computation since the joints are now of type <strong class="text-strong"><em class="text-italics">continuous </em></strong>and not <strong class="text-strong"><em class="text-italics">revolute</em></strong>?</li><li>Should we modify the <a href="https://github.com/bulletphysics/bullet3/blob/master/examples/pybullet/gym/pybullet_utils/urdfEditor.py" class="postlink">URDF editor</a> to automatically add <strong class="text-strong"><em class="text-italics">limit effort</em></strong>?</li><li>How should we rectify the <strong class="text-strong"><em class="text-italics">dynamics damping</em></strong> parameters?</li></ol>Thank you.<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=13785">Dyu</a> — Wed Dec 09, 2020 2:09 pm</p><hr />
]]></content>
	</entry>
	</feed>
