<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title><![CDATA[RoboDK Forum - All Forums]]></title>
		<link>https://robodk.com/forum/</link>
		<description><![CDATA[RoboDK Forum - https://robodk.com/forum]]></description>
		<pubDate>Thu, 23 Jul 2026 10:57:31 +0000</pubDate>
		<generator>MyBB</generator>
		<item>
			<title><![CDATA[Simulating an imported ABB robot program]]></title>
			<link>https://robodk.com/forum/Thread-Simulating-an-imported-ABB-robot-program</link>
			<pubDate>Wed, 22 Jul 2026 23:24:53 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=7192">HenryInUtah</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Simulating-an-imported-ABB-robot-program</guid>
			<description><![CDATA[Hello - <br />
I am using RoboDK in a PySide application and have a couple confusing things that I cannot figure out.  The attached station has a couple small tool change paths.  I have exported both of those as *.mod files that are also attached.<br />
<br />
I know that I can simulate them in RoboDK as normal, but there are a lot of steps in our process that happen between authoring the paths and simulating them later.<br />
<br />
When I use the Python API to import the mod files, it pops up a couple dialog boxes that get in the way and require user input.  I need to suppress those dialog boxes and work around them somehow.  Here are the two dialogs:<br />

<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7811" target="_blank" title="">Import Options.png</a> (Size: 11.72 KB / Downloads: 0)
<br />
<br />

<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7812" target="_blank" title="">Import Summary.png</a> (Size: 10.79 KB / Downloads: 4)
<br />
<br />
The program seems to import perfectly.  However, the API says that the program is not valid.  If I double click the program in the tree it will run as expected.  If I select the program and press F5 it will update the program and the icon returns to "valid".  But if the script tries to use the Update() method on the program it fails.<br />
<br />
If you open the station, there is a "Import Robot Program" script that goes through all of these steps.  I hope that you see the same results that I see :)<br />
<br />
Does anyone have some suggestions of what I should try?  Or what I am doing wrong - which is more likely.<br />
<br />
Thanks,<br />
Henry<br />
<hr class="mycode_hr" />
Sorry - I attached the wrong station.  <br />
Please use this one instead -&gt; Tool Change Development Simplified.rdk<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/prog.png" title="ABB Rapid Program" border="0" alt=".mod" />
&nbsp;&nbsp;<a href="attachment.php?aid=7809" target="_blank" title="">SpindleApproach.mod</a> (Size: 2.51 KB / Downloads: 1)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/prog.png" title="ABB Rapid Program" border="0" alt=".mod" />
&nbsp;&nbsp;<a href="attachment.php?aid=7810" target="_blank" title="">SpindleRetract.mod</a> (Size: 2.06 KB / Downloads: 2)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/robodk.png" title="RoboDK station" border="0" alt=".rdk" />
&nbsp;&nbsp;<a href="attachment.php?aid=7813" target="_blank" title="">Tool Change Development Simplified.rdk</a> (Size: 3.29 MB / Downloads: 2)
]]></description>
			<content:encoded><![CDATA[Hello - <br />
I am using RoboDK in a PySide application and have a couple confusing things that I cannot figure out.  The attached station has a couple small tool change paths.  I have exported both of those as *.mod files that are also attached.<br />
<br />
I know that I can simulate them in RoboDK as normal, but there are a lot of steps in our process that happen between authoring the paths and simulating them later.<br />
<br />
When I use the Python API to import the mod files, it pops up a couple dialog boxes that get in the way and require user input.  I need to suppress those dialog boxes and work around them somehow.  Here are the two dialogs:<br />

<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7811" target="_blank" title="">Import Options.png</a> (Size: 11.72 KB / Downloads: 0)
<br />
<br />

<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7812" target="_blank" title="">Import Summary.png</a> (Size: 10.79 KB / Downloads: 4)
<br />
<br />
The program seems to import perfectly.  However, the API says that the program is not valid.  If I double click the program in the tree it will run as expected.  If I select the program and press F5 it will update the program and the icon returns to "valid".  But if the script tries to use the Update() method on the program it fails.<br />
<br />
If you open the station, there is a "Import Robot Program" script that goes through all of these steps.  I hope that you see the same results that I see :)<br />
<br />
Does anyone have some suggestions of what I should try?  Or what I am doing wrong - which is more likely.<br />
<br />
Thanks,<br />
Henry<br />
<hr class="mycode_hr" />
Sorry - I attached the wrong station.  <br />
Please use this one instead -&gt; Tool Change Development Simplified.rdk<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/prog.png" title="ABB Rapid Program" border="0" alt=".mod" />
&nbsp;&nbsp;<a href="attachment.php?aid=7809" target="_blank" title="">SpindleApproach.mod</a> (Size: 2.51 KB / Downloads: 1)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/prog.png" title="ABB Rapid Program" border="0" alt=".mod" />
&nbsp;&nbsp;<a href="attachment.php?aid=7810" target="_blank" title="">SpindleRetract.mod</a> (Size: 2.06 KB / Downloads: 2)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/robodk.png" title="RoboDK station" border="0" alt=".rdk" />
&nbsp;&nbsp;<a href="attachment.php?aid=7813" target="_blank" title="">Tool Change Development Simplified.rdk</a> (Size: 3.29 MB / Downloads: 2)
]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Add KUKA KR210 R3100-2]]></title>
			<link>https://robodk.com/forum/Thread-Add-KUKA-KR210-R3100-2</link>
			<pubDate>Wed, 22 Jul 2026 09:42:23 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=9444">ALEJANDRO</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Add-KUKA-KR210-R3100-2</guid>
			<description><![CDATA[
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="JPEG Image" border="0" alt=".jpeg" />
&nbsp;&nbsp;<a href="attachment.php?aid=7805" target="_blank" title="">Screenshot 2026-07-22 113123.jpeg</a> (Size: 53.21 KB / Downloads: 7)
<br />
I have noticed that none of the robot models in the RoboDK library match our KR 210 R3100-2 DH parameters. <br />
I have followed the instructions to model it ourself but we cannot find a way to save the robot itself as a .robot to a local library to be used in other stations<br />
<br />
Also, It might be better to simplify the robot geometry further to ease the collision checking computation or, as it is done on the Gazebo simulator, add an additional fully simplified mesh just for collision checking<br />
<br />
I am attaching my robot station for you to compare<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/robodk.png" title="RoboDK station" border="0" alt=".rdk" />
&nbsp;&nbsp;<a href="attachment.php?aid=7806" target="_blank" title="">KUKA KR 210 R3100-2.rdk</a> (Size: 9.86 MB / Downloads: 4)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/pdf.png" title="Adobe Acrobat PDF" border="0" alt=".pdf" />
&nbsp;&nbsp;<a href="attachment.php?aid=7807" target="_blank" title="">lvPkvE3faa56CD1wmZyD (2).pdf</a> (Size: 497.65 KB / Downloads: 5)
]]></description>
			<content:encoded><![CDATA[
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="JPEG Image" border="0" alt=".jpeg" />
&nbsp;&nbsp;<a href="attachment.php?aid=7805" target="_blank" title="">Screenshot 2026-07-22 113123.jpeg</a> (Size: 53.21 KB / Downloads: 7)
<br />
I have noticed that none of the robot models in the RoboDK library match our KR 210 R3100-2 DH parameters. <br />
I have followed the instructions to model it ourself but we cannot find a way to save the robot itself as a .robot to a local library to be used in other stations<br />
<br />
Also, It might be better to simplify the robot geometry further to ease the collision checking computation or, as it is done on the Gazebo simulator, add an additional fully simplified mesh just for collision checking<br />
<br />
I am attaching my robot station for you to compare<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/robodk.png" title="RoboDK station" border="0" alt=".rdk" />
&nbsp;&nbsp;<a href="attachment.php?aid=7806" target="_blank" title="">KUKA KR 210 R3100-2.rdk</a> (Size: 9.86 MB / Downloads: 4)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/pdf.png" title="Adobe Acrobat PDF" border="0" alt=".pdf" />
&nbsp;&nbsp;<a href="attachment.php?aid=7807" target="_blank" title="">lvPkvE3faa56CD1wmZyD (2).pdf</a> (Size: 497.65 KB / Downloads: 5)
]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Alternative way to obtain all IK solutions for FANUC CRX-10iA]]></title>
			<link>https://robodk.com/forum/Thread-Alternative-way-to-obtain-all-IK-solutions-for-FANUC-CRX-10iA</link>
			<pubDate>Wed, 22 Jul 2026 04:48:08 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=10935">Shigeaki Takatsu</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Alternative-way-to-obtain-all-IK-solutions-for-FANUC-CRX-10iA</guid>
			<description><![CDATA[Hello,<br />
<br />
I am using a FANUC CRX-10iA with RoboDK 5.6.7.<br />
<br />
I found the existing forum threads explaining that multiple configurations are<br />
not currently supported for FANUC CRX robots.<br />
<br />
I would like to know whether there is any alternative way to obtain all valid<br />
inverse-kinematics solutions for a given Cartesian pose.<br />
<br />
In my test, SolveIK_All() returns only one solution.<br />
<br />
However, I confirmed that another valid joint posture exists for exactly the<br />
same Cartesian pose. I verified this using SolveFK(), and the pose difference<br />
was effectively zero.<br />
<br />
I also tried SolveIK() with the other valid joint posture provided as<br />
joints_approx, but RoboDK still returned the same single solution.<br />
<br />
Is there any alternative API, solver, robot model setting, or recommended<br />
method to obtain all valid IK solutions for the CRX-10iA?<br />
<br />
Thank you.]]></description>
			<content:encoded><![CDATA[Hello,<br />
<br />
I am using a FANUC CRX-10iA with RoboDK 5.6.7.<br />
<br />
I found the existing forum threads explaining that multiple configurations are<br />
not currently supported for FANUC CRX robots.<br />
<br />
I would like to know whether there is any alternative way to obtain all valid<br />
inverse-kinematics solutions for a given Cartesian pose.<br />
<br />
In my test, SolveIK_All() returns only one solution.<br />
<br />
However, I confirmed that another valid joint posture exists for exactly the<br />
same Cartesian pose. I verified this using SolveFK(), and the pose difference<br />
was effectively zero.<br />
<br />
I also tried SolveIK() with the other valid joint posture provided as<br />
joints_approx, but RoboDK still returned the same single solution.<br />
<br />
Is there any alternative API, solver, robot model setting, or recommended<br />
method to obtain all valid IK solutions for the CRX-10iA?<br />
<br />
Thank you.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Curve Following example]]></title>
			<link>https://robodk.com/forum/Thread-Curve-Following-example</link>
			<pubDate>Tue, 21 Jul 2026 07:36:04 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=9444">ALEJANDRO</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Curve-Following-example</guid>
			<description><![CDATA[Good day,<br />
we are currently learning how the curve following module works for blade cutting. <br />
<br />
We want to cut a rectangle with a blade meaning the toolpath need to retract and reorient between cuts. We have tinkered with the curve following parameters a bit to see if this is possible but the generated path is not wat we intended.<br />

<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7803" target="_blank" title="">Screenshot 2026-07-21 092807.png</a> (Size: 45.97 KB / Downloads: 11)
<br />
<br />
We managed to edit the generated path instructions so that it behaves as intended but this is not feasible for more complex paths.<br />

<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7804" target="_blank" title="">Screenshot 2026-07-21 093337.png</a> (Size: 59.34 KB / Downloads: 13)
<br />
<br />
Is there a way to generate the toolpath automatically just by tweaking the curve following project parameters?<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/robodk.png" title="RoboDK station" border="0" alt=".rdk" />
&nbsp;&nbsp;<a href="attachment.php?aid=7802" target="_blank" title="">SawBlade.rdk</a> (Size: 646.93 KB / Downloads: 4)
]]></description>
			<content:encoded><![CDATA[Good day,<br />
we are currently learning how the curve following module works for blade cutting. <br />
<br />
We want to cut a rectangle with a blade meaning the toolpath need to retract and reorient between cuts. We have tinkered with the curve following parameters a bit to see if this is possible but the generated path is not wat we intended.<br />

<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7803" target="_blank" title="">Screenshot 2026-07-21 092807.png</a> (Size: 45.97 KB / Downloads: 11)
<br />
<br />
We managed to edit the generated path instructions so that it behaves as intended but this is not feasible for more complex paths.<br />

<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7804" target="_blank" title="">Screenshot 2026-07-21 093337.png</a> (Size: 59.34 KB / Downloads: 13)
<br />
<br />
Is there a way to generate the toolpath automatically just by tweaking the curve following project parameters?<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/robodk.png" title="RoboDK station" border="0" alt=".rdk" />
&nbsp;&nbsp;<a href="attachment.php?aid=7802" target="_blank" title="">SawBlade.rdk</a> (Size: 646.93 KB / Downloads: 4)
]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[How do I update the XarmAPI version used in RoboDK?]]></title>
			<link>https://robodk.com/forum/Thread-How-do-I-update-the-XarmAPI-version-used-in-RoboDK</link>
			<pubDate>Mon, 20 Jul 2026 19:25:51 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=10931">jheimann</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-How-do-I-update-the-XarmAPI-version-used-in-RoboDK</guid>
			<description><![CDATA[RoboDK contains the XarmAPI version 1.1.5 (which I believe is really 1.15.0 from Github... <a href="https://github.com/xArm-Developer/xArm-Python-SDK" target="_blank" rel="noopener" class="mycode_url">https://github.com/xArm-Developer/xArm-Python-SDK</a>).  I need to update this to version 1.18.0 (latest version).  The reason for this is my gripper I have (uFactory Gripper G2) is not supported in the 1.15 version, but only from 1.16 and above.<br />
<br />
Also, I can't seem to get my custom gripper I created (mechanism model mechanism) to work right.  It works fine in the animation, but it will not actually open or close on the robot.  When I open the gripper to 80 (0 is closed) the robot joint 1 moves 80 and the gripper does nothing.<br />
<br />
How do I get this custom 2 finger gripper I created to actually run on the robot?  Any help would be appreciated.<br />
<br />
Thanks!]]></description>
			<content:encoded><![CDATA[RoboDK contains the XarmAPI version 1.1.5 (which I believe is really 1.15.0 from Github... <a href="https://github.com/xArm-Developer/xArm-Python-SDK" target="_blank" rel="noopener" class="mycode_url">https://github.com/xArm-Developer/xArm-Python-SDK</a>).  I need to update this to version 1.18.0 (latest version).  The reason for this is my gripper I have (uFactory Gripper G2) is not supported in the 1.15 version, but only from 1.16 and above.<br />
<br />
Also, I can't seem to get my custom gripper I created (mechanism model mechanism) to work right.  It works fine in the animation, but it will not actually open or close on the robot.  When I open the gripper to 80 (0 is closed) the robot joint 1 moves 80 and the gripper does nothing.<br />
<br />
How do I get this custom 2 finger gripper I created to actually run on the robot?  Any help would be appreciated.<br />
<br />
Thanks!]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Cannot connect to uFactory 850 Robot]]></title>
			<link>https://robodk.com/forum/Thread-Cannot-connect-to-uFactory-850-Robot</link>
			<pubDate>Mon, 20 Jul 2026 19:09:48 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=10931">jheimann</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Cannot-connect-to-uFactory-850-Robot</guid>
			<description><![CDATA[I have a uFactory 850 robot arm and downloaded the uFactory 850 robot from the RoboDK library.  I added the robot to my station and tried to connect to my robot, but it failed with an error 'Cannot start c:/RoboDK/api/robot/uFactoryDriver.exe"  A picture of the error is attached.  It would seem that the robot in your library is missing a key file.  Can this be fixed in the library so that I can connect to my robot?<br />
<br />
Thanks!<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7801" target="_blank" title="">uFactory 850 Connection Error.png</a> (Size: 23.28 KB / Downloads: 10)
]]></description>
			<content:encoded><![CDATA[I have a uFactory 850 robot arm and downloaded the uFactory 850 robot from the RoboDK library.  I added the robot to my station and tried to connect to my robot, but it failed with an error 'Cannot start c:/RoboDK/api/robot/uFactoryDriver.exe"  A picture of the error is attached.  It would seem that the robot in your library is missing a key file.  Can this be fixed in the library so that I can connect to my robot?<br />
<br />
Thanks!<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7801" target="_blank" title="">uFactory 850 Connection Error.png</a> (Size: 23.28 KB / Downloads: 10)
]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Guidance on PLC Integration and Robot Control in RoboDK]]></title>
			<link>https://robodk.com/forum/Thread-Guidance-on-PLC-Integration-and-Robot-Control-in-RoboDK</link>
			<pubDate>Mon, 20 Jul 2026 10:12:44 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=10930">pritesh</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Guidance-on-PLC-Integration-and-Robot-Control-in-RoboDK</guid>
			<description><![CDATA[I am currently working on an industrial automation project and would like to learn the complete process of integrating a PLC with RoboDK and controlling a robot using PLC logic.<br />
<br />
My objective is to build a complete simulation where the PLC communicates with RoboDK, exchanges input/output signals, and controls the robot's movements and program execution in real time.<br />
I would appreciate your guidance on the following:<ul class="mycode_list"><li>How to connect a PLC with RoboDK.<br />
</li>
<li>Supported communication protocols (such as EtherNet/IP, PROFINET, Modbus TCP, OPC UA, etc.).<br />
</li>
<li>How to configure communication between the PLC and RoboDK.<br />
</li>
<li>How to send and receive I/O signals.<br />
</li>
<li>How to control robot movements and execute robot programs using PLC logic.<br />
</li>
<li>Any documentation, tutorials, sample projects, or training resources that explain the complete workflow from start to finish.<br />
</li>
</ul>
I am eager to learn the entire setup and would greatly appreciate any recommendations or learning materials you can provide.]]></description>
			<content:encoded><![CDATA[I am currently working on an industrial automation project and would like to learn the complete process of integrating a PLC with RoboDK and controlling a robot using PLC logic.<br />
<br />
My objective is to build a complete simulation where the PLC communicates with RoboDK, exchanges input/output signals, and controls the robot's movements and program execution in real time.<br />
I would appreciate your guidance on the following:<ul class="mycode_list"><li>How to connect a PLC with RoboDK.<br />
</li>
<li>Supported communication protocols (such as EtherNet/IP, PROFINET, Modbus TCP, OPC UA, etc.).<br />
</li>
<li>How to configure communication between the PLC and RoboDK.<br />
</li>
<li>How to send and receive I/O signals.<br />
</li>
<li>How to control robot movements and execute robot programs using PLC logic.<br />
</li>
<li>Any documentation, tutorials, sample projects, or training resources that explain the complete workflow from start to finish.<br />
</li>
</ul>
I am eager to learn the entire setup and would greatly appreciate any recommendations or learning materials you can provide.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Welding CFP axis optimisation/collision questions]]></title>
			<link>https://robodk.com/forum/Thread-Welding-CFP-axis-optimisation-collision-questions</link>
			<pubDate>Fri, 17 Jul 2026 16:02:51 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=10922">Arno.Klocke_Estia</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Welding-CFP-axis-optimisation-collision-questions</guid>
			<description><![CDATA[Hello, <br />
First of all thank you so much for the RoboDK software it's the best OLP software I have ever tried ! <br />
I am working on a project that aims to weld bicycle frames in France. <br />
I am having trouble with finding all the right parameters for Curve follow project and external axis optimization, but I think I have found the right proportion for the welding path I want to achieve. <br />
My problem comes from the avoid collision algorithm for which there is a +-180 degrees on the Z axis of the tool. <br />
You will find attached the RDK file with the cell.<br />
<br />
The first CFP which does exactly what I need, great algorith with the weight by the way very intuitive !<br />
The second CFP which should avoir collisions turning the tool +-180 degrees and doesnt converge to a solution. <br />
<br />
The third is a manual program I did using joints target from the first CFP programm and manually adjusting the orientation of the torch on the last points to avoid collision. <br />
<br />
Is there something I have done wrong in the parameters ? Did I not understand what avoid collisions does ? Is there a better way to achieve the result from the 3rd program ? <br />
I would love to have your insights and advice on this problematic ! <br />
Thank you so much <br />
Arno Klocke<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/robodk.png" title="RoboDK station" border="0" alt=".rdk" />
&nbsp;&nbsp;<a href="attachment.php?aid=7799" target="_blank" title="">Cellule_MILC_17_07.rdk</a> (Size: 25.51 MB / Downloads: 15)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7800" target="_blank" title="">Robotic_Cell_Welding_RDK.png</a> (Size: 67.14 KB / Downloads: 8)
]]></description>
			<content:encoded><![CDATA[Hello, <br />
First of all thank you so much for the RoboDK software it's the best OLP software I have ever tried ! <br />
I am working on a project that aims to weld bicycle frames in France. <br />
I am having trouble with finding all the right parameters for Curve follow project and external axis optimization, but I think I have found the right proportion for the welding path I want to achieve. <br />
My problem comes from the avoid collision algorithm for which there is a +-180 degrees on the Z axis of the tool. <br />
You will find attached the RDK file with the cell.<br />
<br />
The first CFP which does exactly what I need, great algorith with the weight by the way very intuitive !<br />
The second CFP which should avoir collisions turning the tool +-180 degrees and doesnt converge to a solution. <br />
<br />
The third is a manual program I did using joints target from the first CFP programm and manually adjusting the orientation of the torch on the last points to avoid collision. <br />
<br />
Is there something I have done wrong in the parameters ? Did I not understand what avoid collisions does ? Is there a better way to achieve the result from the 3rd program ? <br />
I would love to have your insights and advice on this problematic ! <br />
Thank you so much <br />
Arno Klocke<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/robodk.png" title="RoboDK station" border="0" alt=".rdk" />
&nbsp;&nbsp;<a href="attachment.php?aid=7799" target="_blank" title="">Cellule_MILC_17_07.rdk</a> (Size: 25.51 MB / Downloads: 15)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7800" target="_blank" title="">Robotic_Cell_Welding_RDK.png</a> (Size: 67.14 KB / Downloads: 8)
]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Request for "Update robot kinematics" function to be added for Techman]]></title>
			<link>https://robodk.com/forum/Thread-Request-for-Update-robot-kinematics-function-to-be-added-for-Techman</link>
			<pubDate>Thu, 16 Jul 2026 02:58:51 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=10914">westonl</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Request-for-Update-robot-kinematics-function-to-be-added-for-Techman</guid>
			<description><![CDATA[I have seen that for UR robots, you can open a URP using UR_LoadControllerKinematics and ticking "use controller kinematics". This allows the unique kinematic values of each UR robot to accurately simulate the robot.<br />
<br />
<a href="https://robodk.com/doc/en/Robots-Universal-Robots-Update-Robot-Kinematics.html" target="_blank" rel="noopener" class="mycode_url">https://robodk.com/doc/en/Robots-Univers...atics.html</a><br />
<br />
Could a similar feature please be added for Techman robots, so the Techman factory calibration is reflected in RoboDK and I can program offline more accurately?]]></description>
			<content:encoded><![CDATA[I have seen that for UR robots, you can open a URP using UR_LoadControllerKinematics and ticking "use controller kinematics". This allows the unique kinematic values of each UR robot to accurately simulate the robot.<br />
<br />
<a href="https://robodk.com/doc/en/Robots-Universal-Robots-Update-Robot-Kinematics.html" target="_blank" rel="noopener" class="mycode_url">https://robodk.com/doc/en/Robots-Univers...atics.html</a><br />
<br />
Could a similar feature please be added for Techman robots, so the Techman factory calibration is reflected in RoboDK and I can program offline more accurately?]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Variable speed of movement for non-planar 3D printing]]></title>
			<link>https://robodk.com/forum/Thread-Variable-speed-of-movement-for-non-planar-3D-printing</link>
			<pubDate>Wed, 15 Jul 2026 14:39:30 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=10904">concretebox</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Variable-speed-of-movement-for-non-planar-3D-printing</guid>
			<description><![CDATA[Hi, guys, does anyone know how to make a variable speed of movement of TCP within one layer - for example, on specific edges or sides of object I would like one speed, on the opposite sides - another speed on the sides, that are connecting these edges I need speed that is changing from the beginning point A to end point B for example, I start slowly, 250 mm/s then GRADUALLY increase to 500 mm/s then continue that speed and then backwards gradually reduce speed from 500 mm/s to 250 mm/s. Ideally, to find some instruments that adjust this gradient depending on the initial parameters: for example, for layer height (or distance between curve layers) we set one speed and they it changes it changes it automatically. <br />
I attache the input data what we had as initial curve and what we got when we have 3D printed it MANUALLY changing the speed from 250 mm/s (where you see 10 mm thick layers) to 500 mm/s where you see 4 mm thick layers. The transition is not even because we just pressed the button 50% of initial speed on the FlexPendant :)) <br />
Any ideas, help is appreciated.<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7792" target="_blank" title="">Screenshot 2026-07-15 at 17.37.49.png</a> (Size: 1.31 MB / Downloads: 12)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7793" target="_blank" title="">Screenshot 2026-07-15 at 17.38.05.png</a> (Size: 1.15 MB / Downloads: 9)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7794" target="_blank" title="">98ACBD7B-9AF8-42D3-A818-9127CE8CD8F4.png</a> (Size: 703.57 KB / Downloads: 11)
]]></description>
			<content:encoded><![CDATA[Hi, guys, does anyone know how to make a variable speed of movement of TCP within one layer - for example, on specific edges or sides of object I would like one speed, on the opposite sides - another speed on the sides, that are connecting these edges I need speed that is changing from the beginning point A to end point B for example, I start slowly, 250 mm/s then GRADUALLY increase to 500 mm/s then continue that speed and then backwards gradually reduce speed from 500 mm/s to 250 mm/s. Ideally, to find some instruments that adjust this gradient depending on the initial parameters: for example, for layer height (or distance between curve layers) we set one speed and they it changes it changes it automatically. <br />
I attache the input data what we had as initial curve and what we got when we have 3D printed it MANUALLY changing the speed from 250 mm/s (where you see 10 mm thick layers) to 500 mm/s where you see 4 mm thick layers. The transition is not even because we just pressed the button 50% of initial speed on the FlexPendant :)) <br />
Any ideas, help is appreciated.<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7792" target="_blank" title="">Screenshot 2026-07-15 at 17.37.49.png</a> (Size: 1.31 MB / Downloads: 12)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7793" target="_blank" title="">Screenshot 2026-07-15 at 17.38.05.png</a> (Size: 1.15 MB / Downloads: 9)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7794" target="_blank" title="">98ACBD7B-9AF8-42D3-A818-9127CE8CD8F4.png</a> (Size: 703.57 KB / Downloads: 11)
]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Student License Request]]></title>
			<link>https://robodk.com/forum/Thread-Student-License-Request</link>
			<pubDate>Wed, 15 Jul 2026 07:18:27 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=10916">ameskouk.hassan</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Student-License-Request</guid>
			<description><![CDATA[Hello,<br />
My name is Hassan, and I am a student at ENSET Mohammedia. I am currently working on a robotics solution for Azura as my internship project, and I really like how RoboDK provides all the tools needed to make this work so easy.<br />
However, my 30-day free trial has ended, and I would like to ask if you offer free educational licenses for students.<br />
Thank you,]]></description>
			<content:encoded><![CDATA[Hello,<br />
My name is Hassan, and I am a student at ENSET Mohammedia. I am currently working on a robotics solution for Azura as my internship project, and I really like how RoboDK provides all the tools needed to make this work so easy.<br />
However, my 30-day free trial has ended, and I would like to ask if you offer free educational licenses for students.<br />
Thank you,]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Discrepancy with nominal model, problems importing factory calibration]]></title>
			<link>https://robodk.com/forum/Thread-Discrepancy-with-nominal-model-problems-importing-factory-calibration</link>
			<pubDate>Wed, 15 Jul 2026 03:16:46 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=10914">westonl</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Discrepancy-with-nominal-model-problems-importing-factory-calibration</guid>
			<description><![CDATA[I am using a Techman TM7S to dispense glue using remote TCP. However, I noticed that there was a large discrepancy between real life/TMFlow and what was shown on the simulation. For example, I jogged the robot so a known point was concentric with a CNC milled hole, and level with the table. Then, I compared the joint angles and flange position in real life with RoboDK. I have also attached photos of the situation as a .zip for your understanding.<br />
<br />
This situation is captured in the RDK file I attached, and my goal is to make the RoboDK flange position and TMFlow flange position as close as possible.<br />
<br />
Joint position (same for both RoboDK and TMFlow controller):<br />
[3.530000, 19.860000, 134.880000, 27.370000, -88.410000, -179.450000]<br />
<br />
RoboDK end flange position:<br />
<span style="font-size: medium;" class="mycode_size"><span style="color: #000000;" class="mycode_color"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">[<span style="color: #c82613;" class="mycode_color"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">377.529</span></span>, <span style="color: #0c882a;" class="mycode_color"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">-128.543</span></span>, <span style="color: #0c64c0;" class="mycode_color"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">51.950</span></span>, <span style="color: #c82613;" class="mycode_color"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">92.109</span></span>, <span style="color: #0c882a;" class="mycode_color"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">-0.491</span></span>, <span style="color: #0c64c0;" class="mycode_color"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">91.921</span></span>] </span></span></span><br />
<br />
TMFlow controller end flange position:<br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">[<span style="color: #c82613;" class="mycode_color">376.04</span>, <span style="color: #0c882a;" class="mycode_color">-129.14</span>, <span style="color: #0c64c0;" class="mycode_color">50.51</span>, <span style="color: #c82613;" class="mycode_color">92.49</span>, <span style="color: #0c882a;" class="mycode_color">-0.89</span>, <span style="color: #0c64c0;" class="mycode_color">91.95</span>]</span></span></span><br />
<br />
How could it be that the joints are the same, but the end flange positions are so different? I estimated that the discrepancy was because of the difference in DH parameters. When they make the robot, Techman does a factory calibration so their simulation in TMFlow is accurate. So, my goal is to have a model representative of this factory calibration in RoboDK.<br />
<br />
To start I used the command "get kinematic signature" while connecting to the robot, which produced the following:<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font"><span style="color: #000000;" class="mycode_color">D_Theta,D_Alpha,D_a,D_d,</span><span style="color: #e82a1f;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">D_Beta</span></span></span></span><br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">Joint 1: 0.0000404,0.0179395,0.0165720,0.0000000,-0.0000246</span></span></span><br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">Joint 2: 0.0733208,0.0259537,0.0041697,-0.0224419,-0.0247371</span></span></span><br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">Joint 3: 0.2353199,0.1616824,0.0040169,-0.0224523,-0.0232760</span></span></span><br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">Joint 4: -0.0959575,0.0439753,-0.1085193,-0.0224715,-0.0962841</span></span></span><br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">Joint 5: 0.0340569,-0.0535858,0.0452030,-0.0297354,0.0338707</span></span></span><br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">Joint 6: 0.3494795,0.2145668,-0.0680398,-0.0248465,0.2242535</span></span></span><br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font"><span style="color: #000000;" class="mycode_color">But wait, what is this </span><span style="color: #e82a1f;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">D_Beta </span></span><span style="color: #000000;" class="mycode_color">term?? The table in RoboDK only has the usual four DH parameters, and the D_Beta term seems significant. I couldn't find any documentation about this term online, so I went to other methods for representing the factory calibration - if anyone knows how I can easily put this Delta_DH table into RoboDK in its entirety, please let me know.</span></span></span><br />
<br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">My next goal was to get a URDF/.xacro that I could import using <a href="https://robodk.com/addin/com.robodk.app.importurdf" target="_blank" rel="noopener" class="mycode_url">RoboDK's "Import URDF"</a> app.</span></span></span><br />
<br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">The first step was getting my specific robot's URDF. I achieved this using Techman's <a href="https://github.com/TechmanRobotInc/tm2_ros2/blob/foxy/doc/tm_foxy_description.md" target="_blank" rel="noopener" class="mycode_url">dedicated github repo</a>, which provided me with a step by step guide. The end result of this was both a .URDF and .URDF.xacro, both of which I have attached as a zip. I have had success importing the .xacro and selecting the tm_description folder when prompted.</span></span></span><br />
<br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">However, this is where my progress has halted. I expected the .xacro to import the full robot, in a working state but it imported the TM7S in separate links (1000x too big at first due to meter to mm conversion so I applied a 0.001 scale XD ). </span></span></span><br />
<br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">When I tried making them into a "collaborative robot" mechanism, it did not achieve similarity to the TMFlow numbers (seen above in colour, the current state of the RDK mechanism in the RDK file demonstrates those joint angles so you can see it is not correct). I used as many of the factory-calibrated values from inspecting the .xacro as the mechanism builder would allow, but still there is a discrepancy.</span></span></span><br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font"><span style="color: #000000;" class="mycode_color">When I tried rotating each of the joints, I can see that they haven't been joined correctly as they wiggle. I have attached a video of me rotating the joints to demonstrate this. My best guess would be that this discrepancy is closely related to the "</span><span style="color: #e82a1f;" class="mycode_color">D_Beta</span><span style="color: #000000;" class="mycode_color">" values, as the value of D_Beta goes up for each joint which is what is observed in the video I sent. </span></span></span><br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font"><span style="color: #000000;" class="mycode_color">Does anyone have experience with getting a factory calibrated model into RoboDK? Would it be possible to have a robot created using my URDF?<br />
<br />
***Further research indicates this could be fixed by adding another term onto the end of the current transformation matrix - to the best of my knowledge a usual joint transformation matrix is:<br />
T = Rz(theta) * Tz(d) * Tx(a) * Rx(alpha)</span></span></span><br />
And according to Techman directly, "<span style="color: #1f497d;" class="mycode_color"><span style="font-family: Calibri, sans-serif;" class="mycode_font">The D_Beta means “Compensation value for rotation about the y-direction for each axis”."</span></span><br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Calibri, sans-serif;" class="mycode_font">So this would mean that the joint transformation matrix could be:<br />
 <span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">T = Rz(theta) * Tz(d) * Tx(a) * Rx(alpha) * <span style="font-weight: bold;" class="mycode_b"><span style="font-style: italic;" class="mycode_i">Ry(Beta)</span></span></span></span></span></span><br />
<span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font"><span style="color: #000000;" class="mycode_color"><br />
Does that make sense? Is that correct? Would it be possible to implement this into RoboDK lickety-split so my boss doesn't fire me? Let me know in the comments below!</span></span></span><br />
<hr class="mycode_hr" />
I would attach the latest version of my RDK station here, but I got the following error:<br />
<br />
There has been an error due to your post data being empty. This could be due to a browser page refresh or direct access to this page. We recommend you press the browser back button and begin again.<br />
<br />
So I uploaded it to a file sharing service, here is the link:<br />
<a href="https://limewire.com/d/sbdDL#AkPJi6HldD" target="_blank" rel="noopener" class="mycode_url">https://limewire.com/d/sbdDL#AkPJi6HldD</a><br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
&nbsp;&nbsp;<a href="attachment.php?aid=7786" target="_blank" title="">URDF and xacro.zip</a> (Size: 7.09 MB / Downloads: 10)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/robodk.png" title="RoboDK station" border="0" alt=".rdk" />
&nbsp;&nbsp;<a href="attachment.php?aid=7785" target="_blank" title="">Testing station V4.rdk</a> (Size: 43.72 MB / Downloads: 12)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
&nbsp;&nbsp;<a href="attachment.php?aid=7787" target="_blank" title="">Situation_photos.zip</a> (Size: 8.42 MB / Downloads: 10)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="Video" border="0" alt=".mp4" />
&nbsp;&nbsp;<a href="attachment.php?aid=7788" target="_blank" title="">RDK_problem_demonstration.mp4</a> (Size: 14.85 MB / Downloads: 12)
]]></description>
			<content:encoded><![CDATA[I am using a Techman TM7S to dispense glue using remote TCP. However, I noticed that there was a large discrepancy between real life/TMFlow and what was shown on the simulation. For example, I jogged the robot so a known point was concentric with a CNC milled hole, and level with the table. Then, I compared the joint angles and flange position in real life with RoboDK. I have also attached photos of the situation as a .zip for your understanding.<br />
<br />
This situation is captured in the RDK file I attached, and my goal is to make the RoboDK flange position and TMFlow flange position as close as possible.<br />
<br />
Joint position (same for both RoboDK and TMFlow controller):<br />
[3.530000, 19.860000, 134.880000, 27.370000, -88.410000, -179.450000]<br />
<br />
RoboDK end flange position:<br />
<span style="font-size: medium;" class="mycode_size"><span style="color: #000000;" class="mycode_color"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">[<span style="color: #c82613;" class="mycode_color"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">377.529</span></span>, <span style="color: #0c882a;" class="mycode_color"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">-128.543</span></span>, <span style="color: #0c64c0;" class="mycode_color"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">51.950</span></span>, <span style="color: #c82613;" class="mycode_color"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">92.109</span></span>, <span style="color: #0c882a;" class="mycode_color"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">-0.491</span></span>, <span style="color: #0c64c0;" class="mycode_color"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">91.921</span></span>] </span></span></span><br />
<br />
TMFlow controller end flange position:<br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">[<span style="color: #c82613;" class="mycode_color">376.04</span>, <span style="color: #0c882a;" class="mycode_color">-129.14</span>, <span style="color: #0c64c0;" class="mycode_color">50.51</span>, <span style="color: #c82613;" class="mycode_color">92.49</span>, <span style="color: #0c882a;" class="mycode_color">-0.89</span>, <span style="color: #0c64c0;" class="mycode_color">91.95</span>]</span></span></span><br />
<br />
How could it be that the joints are the same, but the end flange positions are so different? I estimated that the discrepancy was because of the difference in DH parameters. When they make the robot, Techman does a factory calibration so their simulation in TMFlow is accurate. So, my goal is to have a model representative of this factory calibration in RoboDK.<br />
<br />
To start I used the command "get kinematic signature" while connecting to the robot, which produced the following:<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font"><span style="color: #000000;" class="mycode_color">D_Theta,D_Alpha,D_a,D_d,</span><span style="color: #e82a1f;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">D_Beta</span></span></span></span><br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">Joint 1: 0.0000404,0.0179395,0.0165720,0.0000000,-0.0000246</span></span></span><br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">Joint 2: 0.0733208,0.0259537,0.0041697,-0.0224419,-0.0247371</span></span></span><br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">Joint 3: 0.2353199,0.1616824,0.0040169,-0.0224523,-0.0232760</span></span></span><br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">Joint 4: -0.0959575,0.0439753,-0.1085193,-0.0224715,-0.0962841</span></span></span><br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">Joint 5: 0.0340569,-0.0535858,0.0452030,-0.0297354,0.0338707</span></span></span><br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">Joint 6: 0.3494795,0.2145668,-0.0680398,-0.0248465,0.2242535</span></span></span><br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font"><span style="color: #000000;" class="mycode_color">But wait, what is this </span><span style="color: #e82a1f;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">D_Beta </span></span><span style="color: #000000;" class="mycode_color">term?? The table in RoboDK only has the usual four DH parameters, and the D_Beta term seems significant. I couldn't find any documentation about this term online, so I went to other methods for representing the factory calibration - if anyone knows how I can easily put this Delta_DH table into RoboDK in its entirety, please let me know.</span></span></span><br />
<br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">My next goal was to get a URDF/.xacro that I could import using <a href="https://robodk.com/addin/com.robodk.app.importurdf" target="_blank" rel="noopener" class="mycode_url">RoboDK's "Import URDF"</a> app.</span></span></span><br />
<br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">The first step was getting my specific robot's URDF. I achieved this using Techman's <a href="https://github.com/TechmanRobotInc/tm2_ros2/blob/foxy/doc/tm_foxy_description.md" target="_blank" rel="noopener" class="mycode_url">dedicated github repo</a>, which provided me with a step by step guide. The end result of this was both a .URDF and .URDF.xacro, both of which I have attached as a zip. I have had success importing the .xacro and selecting the tm_description folder when prompted.</span></span></span><br />
<br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">However, this is where my progress has halted. I expected the .xacro to import the full robot, in a working state but it imported the TM7S in separate links (1000x too big at first due to meter to mm conversion so I applied a 0.001 scale XD ). </span></span></span><br />
<br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">When I tried making them into a "collaborative robot" mechanism, it did not achieve similarity to the TMFlow numbers (seen above in colour, the current state of the RDK mechanism in the RDK file demonstrates those joint angles so you can see it is not correct). I used as many of the factory-calibrated values from inspecting the .xacro as the mechanism builder would allow, but still there is a discrepancy.</span></span></span><br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font"><span style="color: #000000;" class="mycode_color">When I tried rotating each of the joints, I can see that they haven't been joined correctly as they wiggle. I have attached a video of me rotating the joints to demonstrate this. My best guess would be that this discrepancy is closely related to the "</span><span style="color: #e82a1f;" class="mycode_color">D_Beta</span><span style="color: #000000;" class="mycode_color">" values, as the value of D_Beta goes up for each joint which is what is observed in the video I sent. </span></span></span><br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font"><span style="color: #000000;" class="mycode_color">Does anyone have experience with getting a factory calibrated model into RoboDK? Would it be possible to have a robot created using my URDF?<br />
<br />
***Further research indicates this could be fixed by adding another term onto the end of the current transformation matrix - to the best of my knowledge a usual joint transformation matrix is:<br />
T = Rz(theta) * Tz(d) * Tx(a) * Rx(alpha)</span></span></span><br />
And according to Techman directly, "<span style="color: #1f497d;" class="mycode_color"><span style="font-family: Calibri, sans-serif;" class="mycode_font">The D_Beta means “Compensation value for rotation about the y-direction for each axis”."</span></span><br />
<span style="color: #000000;" class="mycode_color"><span style="font-size: medium;" class="mycode_size"><span style="font-family: Calibri, sans-serif;" class="mycode_font">So this would mean that the joint transformation matrix could be:<br />
 <span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font">T = Rz(theta) * Tz(d) * Tx(a) * Rx(alpha) * <span style="font-weight: bold;" class="mycode_b"><span style="font-style: italic;" class="mycode_i">Ry(Beta)</span></span></span></span></span></span><br />
<span style="font-size: medium;" class="mycode_size"><span style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif;" class="mycode_font"><span style="color: #000000;" class="mycode_color"><br />
Does that make sense? Is that correct? Would it be possible to implement this into RoboDK lickety-split so my boss doesn't fire me? Let me know in the comments below!</span></span></span><br />
<hr class="mycode_hr" />
I would attach the latest version of my RDK station here, but I got the following error:<br />
<br />
There has been an error due to your post data being empty. This could be due to a browser page refresh or direct access to this page. We recommend you press the browser back button and begin again.<br />
<br />
So I uploaded it to a file sharing service, here is the link:<br />
<a href="https://limewire.com/d/sbdDL#AkPJi6HldD" target="_blank" rel="noopener" class="mycode_url">https://limewire.com/d/sbdDL#AkPJi6HldD</a><br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
&nbsp;&nbsp;<a href="attachment.php?aid=7786" target="_blank" title="">URDF and xacro.zip</a> (Size: 7.09 MB / Downloads: 10)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/robodk.png" title="RoboDK station" border="0" alt=".rdk" />
&nbsp;&nbsp;<a href="attachment.php?aid=7785" target="_blank" title="">Testing station V4.rdk</a> (Size: 43.72 MB / Downloads: 12)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/zip.png" title="ZIP File" border="0" alt=".zip" />
&nbsp;&nbsp;<a href="attachment.php?aid=7787" target="_blank" title="">Situation_photos.zip</a> (Size: 8.42 MB / Downloads: 10)
<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="Video" border="0" alt=".mp4" />
&nbsp;&nbsp;<a href="attachment.php?aid=7788" target="_blank" title="">RDK_problem_demonstration.mp4</a> (Size: 14.85 MB / Downloads: 12)
]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Controlling RG6 gripper using digital output command]]></title>
			<link>https://robodk.com/forum/Thread-Controlling-RG6-gripper-using-digital-output-command</link>
			<pubDate>Mon, 13 Jul 2026 22:19:56 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=10107">Muhammad Faizan Ahmed</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Controlling-RG6-gripper-using-digital-output-command</guid>
			<description><![CDATA[Hello everyone,<br />
<br />
I'm currently controlling Jaka Zu7 using Python script, running directly in RoboDK. Now, I want to control the OnRobot RG6 gripper which is attached to the robot. I tried to use the following command but it did not work.<br />
<br />
Command: robot.setDO(0,1) # first value represents the digital ouput while second shows the control value<br />
<br />
I also tried program.setDO(0,1) command and program = RDK.AddProgram(ProgramName) but it also did not work. Kindly guide me how can I control the gripper using python code. Looking forward to hearing from you all. Thank you]]></description>
			<content:encoded><![CDATA[Hello everyone,<br />
<br />
I'm currently controlling Jaka Zu7 using Python script, running directly in RoboDK. Now, I want to control the OnRobot RG6 gripper which is attached to the robot. I tried to use the following command but it did not work.<br />
<br />
Command: robot.setDO(0,1) # first value represents the digital ouput while second shows the control value<br />
<br />
I also tried program.setDO(0,1) command and program = RDK.AddProgram(ProgramName) but it also did not work. Kindly guide me how can I control the gripper using python code. Looking forward to hearing from you all. Thank you]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Nonplanar Curve Follow Project]]></title>
			<link>https://robodk.com/forum/Thread-Nonplanar-Curve-Follow-Project</link>
			<pubDate>Sun, 12 Jul 2026 15:14:38 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=10904">concretebox</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Nonplanar-Curve-Follow-Project</guid>
			<description><![CDATA[Hi, I have a non planar curve, how to follow it with an ABB robot TCP oriented 90 degrees to curve so we will have different normals throughout one curve layer?<br />

<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7778" target="_blank" title="">98ACBD7B-9AF8-42D3-A818-9127CE8CD8F4.png</a> (Size: 703.57 KB / Downloads: 25)
]]></description>
			<content:encoded><![CDATA[Hi, I have a non planar curve, how to follow it with an ABB robot TCP oriented 90 degrees to curve so we will have different normals throughout one curve layer?<br />

<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
&nbsp;&nbsp;<a href="attachment.php?aid=7778" target="_blank" title="">98ACBD7B-9AF8-42D3-A818-9127CE8CD8F4.png</a> (Size: 703.57 KB / Downloads: 25)
]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[curve follow project]]></title>
			<link>https://robodk.com/forum/Thread-curve-follow-project--8931</link>
			<pubDate>Wed, 08 Jul 2026 17:08:27 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=9104">weisseran</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-curve-follow-project--8931</guid>
			<description><![CDATA[I created a STEP file with a curve that I'm planning to follow but unfortunately when ever I upload the STEP file it is empty. I can't see the line.<br />
I opened the STEP file in another CAD software and was able to see the line.<br />
I tried many configurations of Tool- Options- CAD/Display but still nothing shown.]]></description>
			<content:encoded><![CDATA[I created a STEP file with a curve that I'm planning to follow but unfortunately when ever I upload the STEP file it is empty. I can't see the line.<br />
I opened the STEP file in another CAD software and was able to see the line.<br />
I tried many configurations of Tool- Options- CAD/Display but still nothing shown.]]></content:encoded>
		</item>
	</channel>
</rss>