<?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 - RoboDK API]]></title>
		<link>https://robodk.com/forum/</link>
		<description><![CDATA[RoboDK Forum - https://robodk.com/forum]]></description>
		<pubDate>Sun, 19 Apr 2026 11:07:32 +0000</pubDate>
		<generator>MyBB</generator>
		<item>
			<title><![CDATA[Display mensage on screen based on the running program]]></title>
			<link>https://robodk.com/forum/Thread-Display-mensage-on-screen-based-on-the-running-program</link>
			<pubDate>Sat, 28 Mar 2026 13:06:26 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=10213">Danilo assumpção</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Display-mensage-on-screen-based-on-the-running-program</guid>
			<description><![CDATA[Dear All,<br />
I made a simulation with 7 robots, step by step.<br />
<br />
I would like to display a message on the screen according to the program being executed.<br />
<br />
Example:<br />
When program RB01 is running - "Robot 1 picking up part"<br />
When program RB02 is running - "Welding part"<br />
<br />
Is there any API or Python script to do this?]]></description>
			<content:encoded><![CDATA[Dear All,<br />
I made a simulation with 7 robots, step by step.<br />
<br />
I would like to display a message on the screen according to the program being executed.<br />
<br />
Example:<br />
When program RB01 is running - "Robot 1 picking up part"<br />
When program RB02 is running - "Welding part"<br />
<br />
Is there any API or Python script to do this?]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Use API to link multiple program]]></title>
			<link>https://robodk.com/forum/Thread-Use-API-to-link-multiple-program</link>
			<pubDate>Fri, 20 Mar 2026 13:59:07 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=8408">b05611018</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Use-API-to-link-multiple-program</guid>
			<description><![CDATA[I’m currently trying to replicate the <span style="font-weight: bold;" class="mycode_b">“Link selected programs”</span> functionality using the RoboDK API.<br />
From my understanding, I can already achieve a similar result by creating a main program and using <br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>RunInstruction(..., INSTRUCTION_CALL_PROGRAM)</code></div></div> to call multiple sub-programs. However, I noticed that your built-in <span style="font-weight: bold;" class="mycode_b">Link selected programs</span> feature seems to do more than just calling programs sequentially.<br />
In particular, it appears to automatically generate <span style="font-weight: bold;" class="mycode_b">safe transition motions (e.g., collision-free or obstacle-avoiding paths)</span> between programs. This is extremely useful for ensuring safe execution, especially in machining workflows.<br />
I would like to ask:<br />
<ol type="1" class="mycode_list"><li>Is there any API that directly replicates the full behavior of <span style="font-weight: bold;" class="mycode_b">“Link selected programs”</span>, including the automatic generation of safe transition paths?<br />
</li>
<li>If not, is there a recommended way to programmatically generate these <span style="font-weight: bold;" class="mycode_b">safe linking motions</span> between programs (e.g., via motion planning, collision checking, or predefined safe targets)?<br />
</li>
</ol>
My goal is to fully automate the generation of a main program that not only links sub-programs, but also ensures <span style="font-weight: bold;" class="mycode_b">safe transitions between them</span>, similar to what the GUI provides.<br />
Thank you for your help!<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=7619" target="_blank" title="">螢幕擷取畫面 2026-03-20 181548.png</a> (Size: 29.52 KB / Downloads: 43)
]]></description>
			<content:encoded><![CDATA[I’m currently trying to replicate the <span style="font-weight: bold;" class="mycode_b">“Link selected programs”</span> functionality using the RoboDK API.<br />
From my understanding, I can already achieve a similar result by creating a main program and using <br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>RunInstruction(..., INSTRUCTION_CALL_PROGRAM)</code></div></div> to call multiple sub-programs. However, I noticed that your built-in <span style="font-weight: bold;" class="mycode_b">Link selected programs</span> feature seems to do more than just calling programs sequentially.<br />
In particular, it appears to automatically generate <span style="font-weight: bold;" class="mycode_b">safe transition motions (e.g., collision-free or obstacle-avoiding paths)</span> between programs. This is extremely useful for ensuring safe execution, especially in machining workflows.<br />
I would like to ask:<br />
<ol type="1" class="mycode_list"><li>Is there any API that directly replicates the full behavior of <span style="font-weight: bold;" class="mycode_b">“Link selected programs”</span>, including the automatic generation of safe transition paths?<br />
</li>
<li>If not, is there a recommended way to programmatically generate these <span style="font-weight: bold;" class="mycode_b">safe linking motions</span> between programs (e.g., via motion planning, collision checking, or predefined safe targets)?<br />
</li>
</ol>
My goal is to fully automate the generation of a main program that not only links sub-programs, but also ensures <span style="font-weight: bold;" class="mycode_b">safe transitions between them</span>, similar to what the GUI provides.<br />
Thank you for your help!<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=7619" target="_blank" title="">螢幕擷取畫面 2026-03-20 181548.png</a> (Size: 29.52 KB / Downloads: 43)
]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Control 3 Positioners as A7, A8, A9]]></title>
			<link>https://robodk.com/forum/Thread-Control-3-Positioners-as-A7-A8-A9</link>
			<pubDate>Wed, 11 Mar 2026 23:03:43 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=10125">wreid</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Control-3-Positioners-as-A7-A8-A9</guid>
			<description><![CDATA[Hey team!<br />
<br />
I need some help setting up 3 positioners to be controlled from my Comau robot A7, A8, A9.<br />
<br />
I've been playing around with the configuration and reading other forum posts (like <a href="https://robodk.com/forum/Thread-Synchronizing-external-axes-using-the-API" target="_blank" rel="noopener" class="mycode_url">this one</a>) to set up the mechanisms but have had little success. The only way I can define all 3 positioners is with one of the positioners linked to A7, and the other two as standalone positioners (essentially an A1 each). <br />
<br />
This works fine inside the RoboDK simulation, and I have created python scripts to manipulate the positioners as expected. However, the problem is when I generate the robot program.<br />
<br />
Any control command (move just robot, move robot &amp; positioners, move just positioners) is generated as a move robot command with 7 axes. <br />
E.g.   MOVE TO {A1, A2, A3, A4, A5, A6, E1} <br />
<br />
This means that trying to move just the robot will also move the positioner in E1. <br />
E.g. my MoveRobotHome.py is exported with the following move command.<br />
      MOVE TO {0.00000,-60.00000,-110.00000,0.00000,90.00000,0.00000,90.00000} <br />
      robot is moved to home AND positioner 1 is moved to 90 deg<br />
<br />
Similarly, when I try to move just positioner A8 or A9 it will generate it as essentially just an A1 move<br />
E.g. MovePositioner2(90) is exported with the following move command.<br />
      MOVE TO {90.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000}<br />
      This moves A1 to 90 and all other joints (including positioner 1 in A7) to 0, instead of just positioner 2 to 90 deg.<br />
<br />
I need to be able to export my move commands with all axes by defining the positioners as A7, A8 and A9 inside RoboDK so the exported move commands are:<br />
   MOVE TO {A1, A2, A3, A4, A5, A6, E1, E2, E3}  <br />
<br />
Any ideas?<br />
<br />
I am using RoboDK v5.7.4<br />
Robot: Comau S-13<br />
Post Processor: Comau C5G<br />
<br />
See below raw script dump. This script should move robot to home, then positioners 2 and 3 to home, then positioner 1.<br />
MoveToStation1.py<br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code># You can also use the new version of the API:<br />
from robodk import robolink    # RoboDK API<br />
from robodk import robomath    # Robot toolbox<br />
RDK = robolink.Robolink()<br />
<br />
<br />
<br />
# ----------------- move robot to home -----------------<br />
<br />
# get comau robodk<br />
comau = RDK.Item('Comau S-13', robolink.ITEM_TYPE_ROBOT)<br />
<br />
# check comau is valid<br />
if not comau.Valid():<br />
    raise Exception("Could not find JIG 1")<br />
<br />
# set speed<br />
comau.setSpeed(-1, 30, -1, -1)  # 30 deg/s joint speed<br />
<br />
# initialise joints<br />
joints_comau = comau.Joints()<br />
<br />
# update joints to home position<br />
joints_comau[0] = 0<br />
joints_comau[1] = -60<br />
joints_comau[2] = -110<br />
joints_comau[3] = 0<br />
joints_comau[4] = 90<br />
joints_comau[5] = 0<br />
<br />
# move to joints<br />
comau.MoveJ(joints_comau)<br />
<br />
# ------------------------------------------------------<br />
<br />
<br />
<br />
# --------------------- move JIG 1 ---------------------<br />
<br />
# get jig1 robodk<br />
jig_1 = RDK.Item('JIG1', robolink.ITEM_TYPE_ROBOT)<br />
<br />
# check jig1 is valid<br />
if not jig_1.Valid():<br />
    raise Exception("Could not find JIG 1")<br />
<br />
# set speed<br />
jig_1.setSpeed(-1, 10, -1, -1)  # 20 deg/s rotation speed<br />
<br />
# initialise joints<br />
joints_jig1 = jig_1.Joints()<br />
<br />
# update jig1 target angle<br />
joints_jig1[0] = 90<br />
<br />
# move to target angle<br />
jig_1.MoveJ(joints_jig1)<br />
<br />
# ------------------------------------------------------<br />
<br />
<br />
<br />
# --------------------- move JIG 2 ---------------------<br />
<br />
# get jig2 robodk<br />
jig_2 = RDK.Item('JIG2', robolink.ITEM_TYPE_ROBOT) <br />
<br />
# check jig2 is valid<br />
if not jig_2.Valid():<br />
    raise Exception("Could not find JIG 2")<br />
<br />
# set speed<br />
jig_2.setSpeed(-1, 10, -1, -1)  # 20 deg/s rotation speed<br />
<br />
# initialise joints<br />
joints_jig2 = jig_2.Joints()<br />
<br />
# update jig2 target angle<br />
joints_jig2[0] = 90<br />
<br />
# move to target angle<br />
jig_2.MoveJ(joints_jig2)<br />
<br />
# ------------------------------------------------------<br />
<br />
<br />
<br />
# -------------------- move JIG MAIN -------------------<br />
<br />
# get main jig robodk<br />
jig_main = RDK.Item('MAIN JIG', robolink.ITEM_TYPE_ROBOT)<br />
<br />
# check main jig is valid<br />
if not jig_main.Valid():<br />
    raise Exception("Could not find MAIN JIG")<br />
<br />
# set speed<br />
jig_main.setSpeed(-1, 10, -1, -1)  # 20 deg/s rotation speed<br />
<br />
# initialise joints<br />
joints_jigmain = jig_main.Joints()<br />
<br />
# update jig main target angle<br />
joints_jigmain[0] = 0<br />
<br />
# move to target angle<br />
jig_main.MoveJ(joints_jigmain)<br />
<br />
# ------------------------------------------------------</code></div></div><br />
Comau output<br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>PROGRAM MoveToStation1<br />
VAR<br />
ROUTINE R_MoveToStation1 EXPORTED FROM MoveToStation1 GLOBAL<br />
<br />
ROUTINE R_MoveToStation1<br />
VAR<br />
BEGIN<br />
  &#36;ORNT_TYPE := RS_WORLD<br />
  &#36;MOVE_TYPE := JOINT<br />
  &#36;JNT_MTURN := TRUE<br />
  &#36;CNFG_CARE := TRUE<br />
  &#36;TURN_CARE := TRUE<br />
  &#36;SING_CARE := FALSE<br />
  &#36;TERM_TYPE := NOSETTLE<br />
  &#36;FLY_TYPE := FLY_CART<br />
  &#36;FLY_TRAJ := FLY_PASS<br />
  &#36;FLY_DIST := -1.000<br />
  &#36;STRESS_PER:= 65<br />
  -- Program generated by RoboDK v5.7.4 for Comau S-13 on 11/03/2026 12:35:30<br />
  &#36;ROT_SPD := 0.524<br />
  &#36;UFRAME := POS(-62.0000, -140.0000, -2000.0000, -90.0000, 90.0000, 0.0000, '') <br />
  &#36;TOOL := POS(0.0000, 0.0000, 510.0000, -104.9996, 120.0002, 150.0002, '')<br />
  MOVE TO {0.00000,-60.00000,-110.00000,0.00000,90.00000,0.00000,90.00000} -- move COMAU only<br />
  &#36;ROT_SPD := 0.175<br />
  &#36;UFRAME := POS(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, '')<br />
  &#36;TOOL := POS(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, '')<br />
  MOVE TO {90.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000} -- move JIG1 only<br />
  &#36;ROT_SPD := 0.175<br />
  MOVE TO {90.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000} -- move JIG2 only<br />
  &#36;ROT_SPD := 0.175<br />
  MOVE TO {0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000} -- move MAIN JIG only<br />
END R_MoveToStation1<br />
<br />
BEGIN<br />
  R_MoveToStation1<br />
END MoveToStation1</code></div></div><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=7608" target="_blank" title="">Screenshot 2026-03-12 085123.png</a> (Size: 332.11 KB / Downloads: 33)
]]></description>
			<content:encoded><![CDATA[Hey team!<br />
<br />
I need some help setting up 3 positioners to be controlled from my Comau robot A7, A8, A9.<br />
<br />
I've been playing around with the configuration and reading other forum posts (like <a href="https://robodk.com/forum/Thread-Synchronizing-external-axes-using-the-API" target="_blank" rel="noopener" class="mycode_url">this one</a>) to set up the mechanisms but have had little success. The only way I can define all 3 positioners is with one of the positioners linked to A7, and the other two as standalone positioners (essentially an A1 each). <br />
<br />
This works fine inside the RoboDK simulation, and I have created python scripts to manipulate the positioners as expected. However, the problem is when I generate the robot program.<br />
<br />
Any control command (move just robot, move robot &amp; positioners, move just positioners) is generated as a move robot command with 7 axes. <br />
E.g.   MOVE TO {A1, A2, A3, A4, A5, A6, E1} <br />
<br />
This means that trying to move just the robot will also move the positioner in E1. <br />
E.g. my MoveRobotHome.py is exported with the following move command.<br />
      MOVE TO {0.00000,-60.00000,-110.00000,0.00000,90.00000,0.00000,90.00000} <br />
      robot is moved to home AND positioner 1 is moved to 90 deg<br />
<br />
Similarly, when I try to move just positioner A8 or A9 it will generate it as essentially just an A1 move<br />
E.g. MovePositioner2(90) is exported with the following move command.<br />
      MOVE TO {90.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000}<br />
      This moves A1 to 90 and all other joints (including positioner 1 in A7) to 0, instead of just positioner 2 to 90 deg.<br />
<br />
I need to be able to export my move commands with all axes by defining the positioners as A7, A8 and A9 inside RoboDK so the exported move commands are:<br />
   MOVE TO {A1, A2, A3, A4, A5, A6, E1, E2, E3}  <br />
<br />
Any ideas?<br />
<br />
I am using RoboDK v5.7.4<br />
Robot: Comau S-13<br />
Post Processor: Comau C5G<br />
<br />
See below raw script dump. This script should move robot to home, then positioners 2 and 3 to home, then positioner 1.<br />
MoveToStation1.py<br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code># You can also use the new version of the API:<br />
from robodk import robolink    # RoboDK API<br />
from robodk import robomath    # Robot toolbox<br />
RDK = robolink.Robolink()<br />
<br />
<br />
<br />
# ----------------- move robot to home -----------------<br />
<br />
# get comau robodk<br />
comau = RDK.Item('Comau S-13', robolink.ITEM_TYPE_ROBOT)<br />
<br />
# check comau is valid<br />
if not comau.Valid():<br />
    raise Exception("Could not find JIG 1")<br />
<br />
# set speed<br />
comau.setSpeed(-1, 30, -1, -1)  # 30 deg/s joint speed<br />
<br />
# initialise joints<br />
joints_comau = comau.Joints()<br />
<br />
# update joints to home position<br />
joints_comau[0] = 0<br />
joints_comau[1] = -60<br />
joints_comau[2] = -110<br />
joints_comau[3] = 0<br />
joints_comau[4] = 90<br />
joints_comau[5] = 0<br />
<br />
# move to joints<br />
comau.MoveJ(joints_comau)<br />
<br />
# ------------------------------------------------------<br />
<br />
<br />
<br />
# --------------------- move JIG 1 ---------------------<br />
<br />
# get jig1 robodk<br />
jig_1 = RDK.Item('JIG1', robolink.ITEM_TYPE_ROBOT)<br />
<br />
# check jig1 is valid<br />
if not jig_1.Valid():<br />
    raise Exception("Could not find JIG 1")<br />
<br />
# set speed<br />
jig_1.setSpeed(-1, 10, -1, -1)  # 20 deg/s rotation speed<br />
<br />
# initialise joints<br />
joints_jig1 = jig_1.Joints()<br />
<br />
# update jig1 target angle<br />
joints_jig1[0] = 90<br />
<br />
# move to target angle<br />
jig_1.MoveJ(joints_jig1)<br />
<br />
# ------------------------------------------------------<br />
<br />
<br />
<br />
# --------------------- move JIG 2 ---------------------<br />
<br />
# get jig2 robodk<br />
jig_2 = RDK.Item('JIG2', robolink.ITEM_TYPE_ROBOT) <br />
<br />
# check jig2 is valid<br />
if not jig_2.Valid():<br />
    raise Exception("Could not find JIG 2")<br />
<br />
# set speed<br />
jig_2.setSpeed(-1, 10, -1, -1)  # 20 deg/s rotation speed<br />
<br />
# initialise joints<br />
joints_jig2 = jig_2.Joints()<br />
<br />
# update jig2 target angle<br />
joints_jig2[0] = 90<br />
<br />
# move to target angle<br />
jig_2.MoveJ(joints_jig2)<br />
<br />
# ------------------------------------------------------<br />
<br />
<br />
<br />
# -------------------- move JIG MAIN -------------------<br />
<br />
# get main jig robodk<br />
jig_main = RDK.Item('MAIN JIG', robolink.ITEM_TYPE_ROBOT)<br />
<br />
# check main jig is valid<br />
if not jig_main.Valid():<br />
    raise Exception("Could not find MAIN JIG")<br />
<br />
# set speed<br />
jig_main.setSpeed(-1, 10, -1, -1)  # 20 deg/s rotation speed<br />
<br />
# initialise joints<br />
joints_jigmain = jig_main.Joints()<br />
<br />
# update jig main target angle<br />
joints_jigmain[0] = 0<br />
<br />
# move to target angle<br />
jig_main.MoveJ(joints_jigmain)<br />
<br />
# ------------------------------------------------------</code></div></div><br />
Comau output<br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>PROGRAM MoveToStation1<br />
VAR<br />
ROUTINE R_MoveToStation1 EXPORTED FROM MoveToStation1 GLOBAL<br />
<br />
ROUTINE R_MoveToStation1<br />
VAR<br />
BEGIN<br />
  &#36;ORNT_TYPE := RS_WORLD<br />
  &#36;MOVE_TYPE := JOINT<br />
  &#36;JNT_MTURN := TRUE<br />
  &#36;CNFG_CARE := TRUE<br />
  &#36;TURN_CARE := TRUE<br />
  &#36;SING_CARE := FALSE<br />
  &#36;TERM_TYPE := NOSETTLE<br />
  &#36;FLY_TYPE := FLY_CART<br />
  &#36;FLY_TRAJ := FLY_PASS<br />
  &#36;FLY_DIST := -1.000<br />
  &#36;STRESS_PER:= 65<br />
  -- Program generated by RoboDK v5.7.4 for Comau S-13 on 11/03/2026 12:35:30<br />
  &#36;ROT_SPD := 0.524<br />
  &#36;UFRAME := POS(-62.0000, -140.0000, -2000.0000, -90.0000, 90.0000, 0.0000, '') <br />
  &#36;TOOL := POS(0.0000, 0.0000, 510.0000, -104.9996, 120.0002, 150.0002, '')<br />
  MOVE TO {0.00000,-60.00000,-110.00000,0.00000,90.00000,0.00000,90.00000} -- move COMAU only<br />
  &#36;ROT_SPD := 0.175<br />
  &#36;UFRAME := POS(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, '')<br />
  &#36;TOOL := POS(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, '')<br />
  MOVE TO {90.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000} -- move JIG1 only<br />
  &#36;ROT_SPD := 0.175<br />
  MOVE TO {90.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000} -- move JIG2 only<br />
  &#36;ROT_SPD := 0.175<br />
  MOVE TO {0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000} -- move MAIN JIG only<br />
END R_MoveToStation1<br />
<br />
BEGIN<br />
  R_MoveToStation1<br />
END MoveToStation1</code></div></div><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=7608" target="_blank" title="">Screenshot 2026-03-12 085123.png</a> (Size: 332.11 KB / Downloads: 33)
]]></content:encoded>
		</item>
		<item>
			<title><![CDATA["Python Path Not Found" Error when trying to save program]]></title>
			<link>https://robodk.com/forum/Thread-Python-Path-Not-Found-Error-when-trying-to-save-program</link>
			<pubDate>Wed, 11 Mar 2026 12:37:08 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=10123">Georgia van der linden</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Python-Path-Not-Found-Error-when-trying-to-save-program</guid>
			<description><![CDATA[Hi! I'm trying to export a tool path for my meca500 robot, but for some reason I can't configure python correctly. When I go to tools-&gt;options-&gt;other and try to load the path to where python is, it still says "path not found" and I have no python tab to insert a path into the "python interpreter". I've tried restarting robodk, but it still doesn't auto-include python. What am I doing wrong? I just want to export my tool path as a python script so I can send it to the post-processor and robot. <br />
Thanks!]]></description>
			<content:encoded><![CDATA[Hi! I'm trying to export a tool path for my meca500 robot, but for some reason I can't configure python correctly. When I go to tools-&gt;options-&gt;other and try to load the path to where python is, it still says "path not found" and I have no python tab to insert a path into the "python interpreter". I've tried restarting robodk, but it still doesn't auto-include python. What am I doing wrong? I just want to export my tool path as a python script so I can send it to the post-processor and robot. <br />
Thanks!]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[How to get the curve object generated by RoboDK CAM Machining Project]]></title>
			<link>https://robodk.com/forum/Thread-How-to-get-the-curve-object-generated-by-RoboDK-CAM-Machining-Project</link>
			<pubDate>Wed, 11 Mar 2026 11:18:50 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=8408">b05611018</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-How-to-get-the-curve-object-generated-by-RoboDK-CAM-Machining-Project</guid>
			<description><![CDATA[Hello,<br />
I am currently exploring RoboDK's CAM / Machining Project workflow.<br />
I would like to ask whether it is possible to access the <span style="font-weight: bold;" class="mycode_b">curve object</span> that is internally generated from the machining settings.<br />
From what I observed, the Machining Project seems to compute the number of points along the toolpath / curve, so I assume there is some internal curve or point sequence being created.<br />
My question is:<ul class="mycode_list"><li>Is there any API method to retrieve that generated <span style="font-weight: bold;" class="mycode_b">curve object</span> directly?<br />
</li>
<li>If not, is there any way to access the corresponding <span style="font-weight: bold;" class="mycode_b">points / path data</span> that the machining settings produced?<br />
</li>
</ul>
Thank you!]]></description>
			<content:encoded><![CDATA[Hello,<br />
I am currently exploring RoboDK's CAM / Machining Project workflow.<br />
I would like to ask whether it is possible to access the <span style="font-weight: bold;" class="mycode_b">curve object</span> that is internally generated from the machining settings.<br />
From what I observed, the Machining Project seems to compute the number of points along the toolpath / curve, so I assume there is some internal curve or point sequence being created.<br />
My question is:<ul class="mycode_list"><li>Is there any API method to retrieve that generated <span style="font-weight: bold;" class="mycode_b">curve object</span> directly?<br />
</li>
<li>If not, is there any way to access the corresponding <span style="font-weight: bold;" class="mycode_b">points / path data</span> that the machining settings produced?<br />
</li>
</ul>
Thank you!]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Program unable to generate depending on creation order]]></title>
			<link>https://robodk.com/forum/Thread-Program-unable-to-generate-depending-on-creation-order</link>
			<pubDate>Thu, 26 Feb 2026 15:59:59 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=9032">Elie_Roy</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Program-unable-to-generate-depending-on-creation-order</guid>
			<description><![CDATA[Hi,<br />
<br />
I’m creating a bunch of programs, but I can only generate them if the tools are processed in a specific order.<br />
<br />
If I generate a program using a mill and then generate a saw program, the mill program won’t generate correctly and I get an error message. However, if I generate the saw program first and then the mill program, everything works fine.<br />
<br />
<br />
I can generate multiple mill programs back-to-back without any issues, but as soon as I switch from mill to saw, everything breaks. At that point, I would need to manually update each mill program, which I can’t do because they would lose their I/O calls and my speed-call modifications.<br />
<br />
All of these programs are then called from a main program.<br />
<br />
In my programs the set tool and set frame is called before any type of moves.<br />
<br />
Any suggestions ?<br />
<br />
Both Mill and Saw programs are built about the same way.<br />
<br />
Cheers<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=7584" target="_blank" title="">Screenshot 2026-02-26 104741.png</a> (Size: 58.23 KB / Downloads: 42)
<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=7585" target="_blank" title="">Screenshot 2026-02-26 102930.png</a> (Size: 31.7 KB / Downloads: 52)
<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=7586" target="_blank" title="">Screenshot 2026-02-26 095335.png</a> (Size: 52.01 KB / Downloads: 52)
<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=7587" target="_blank" title="">Screenshot 2026-02-26 095322.png</a> (Size: 51.54 KB / Downloads: 44)
]]></description>
			<content:encoded><![CDATA[Hi,<br />
<br />
I’m creating a bunch of programs, but I can only generate them if the tools are processed in a specific order.<br />
<br />
If I generate a program using a mill and then generate a saw program, the mill program won’t generate correctly and I get an error message. However, if I generate the saw program first and then the mill program, everything works fine.<br />
<br />
<br />
I can generate multiple mill programs back-to-back without any issues, but as soon as I switch from mill to saw, everything breaks. At that point, I would need to manually update each mill program, which I can’t do because they would lose their I/O calls and my speed-call modifications.<br />
<br />
All of these programs are then called from a main program.<br />
<br />
In my programs the set tool and set frame is called before any type of moves.<br />
<br />
Any suggestions ?<br />
<br />
Both Mill and Saw programs are built about the same way.<br />
<br />
Cheers<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=7584" target="_blank" title="">Screenshot 2026-02-26 104741.png</a> (Size: 58.23 KB / Downloads: 42)
<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=7585" target="_blank" title="">Screenshot 2026-02-26 102930.png</a> (Size: 31.7 KB / Downloads: 52)
<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=7586" target="_blank" title="">Screenshot 2026-02-26 095335.png</a> (Size: 52.01 KB / Downloads: 52)
<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=7587" target="_blank" title="">Screenshot 2026-02-26 095322.png</a> (Size: 51.54 KB / Downloads: 44)
]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Is there an API to fully automate the new RoboDK CAM workflow?]]></title>
			<link>https://robodk.com/forum/Thread-Is-there-an-API-to-fully-automate-the-new-RoboDK-CAM-workflow</link>
			<pubDate>Sat, 21 Feb 2026 09:43:42 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=8408">b05611018</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Is-there-an-API-to-fully-automate-the-new-RoboDK-CAM-workflow</guid>
			<description><![CDATA[Hello RoboDK team and community,<br />
     I am currently exploring the new CAM features recently introduced in RoboDK, and they look very promising for advanced robot machining and toolpath workflows.<br />
I would like to know whether these new CAM-related functionalities (such as creating and configuring Machining Projects, loading NC/G-code toolpaths, and setting strategies/parameters) are fully accessible through the RoboDK API for automation purposes.<br />
My goal is to build a fully automated pipeline where:<ul class="mycode_list"><li>CAM toolpaths are generated externally<br />
</li>
<li>RoboDK automatically creates a Machining Project<br />
</li>
<li>All machining parameters (tool, frame, offsets, approach/retract strategies, etc.) are configured programmatically<br />
</li>
<li>The robot program is then generated and post-processed without manual GUI interaction<br />
</li>
</ul>
From the documentation and examples, I understand that it is possible to create machining projects using functions like "AddMachiningProject"and to load NC files via the API, and also to modify parameters such as tool or frame offsets programmatically.<br />
However, I am not sure if the <span style="font-style: italic;" class="mycode_i">entire</span> workflow exposed in the new CAM GUI (including all advanced machining settings and strategies) is fully controllable via the API, or if some parts are still GUI-only.<br />
So my questions are:<br />
<ol type="1" class="mycode_list"><li>Is there a complete API coverage for the new CAM features?<br />
</li>
<li>Are there recommended best practices to fully automate the CAM → RoboDK → Robot program pipeline?<br />
</li>
<li>If some parameters are not yet available via the API, is there a roadmap to expose them in future releases?<br />
</li>
</ol>
Any guidance, examples, or best practices would be greatly appreciated.<br />
Thank you for your continuous development of RoboDK — it is an incredibly powerful platform for automated robotic machining workflows.<br />
<br />
Best regards,<br />
<br />
YEN-SHUO]]></description>
			<content:encoded><![CDATA[Hello RoboDK team and community,<br />
     I am currently exploring the new CAM features recently introduced in RoboDK, and they look very promising for advanced robot machining and toolpath workflows.<br />
I would like to know whether these new CAM-related functionalities (such as creating and configuring Machining Projects, loading NC/G-code toolpaths, and setting strategies/parameters) are fully accessible through the RoboDK API for automation purposes.<br />
My goal is to build a fully automated pipeline where:<ul class="mycode_list"><li>CAM toolpaths are generated externally<br />
</li>
<li>RoboDK automatically creates a Machining Project<br />
</li>
<li>All machining parameters (tool, frame, offsets, approach/retract strategies, etc.) are configured programmatically<br />
</li>
<li>The robot program is then generated and post-processed without manual GUI interaction<br />
</li>
</ul>
From the documentation and examples, I understand that it is possible to create machining projects using functions like "AddMachiningProject"and to load NC files via the API, and also to modify parameters such as tool or frame offsets programmatically.<br />
However, I am not sure if the <span style="font-style: italic;" class="mycode_i">entire</span> workflow exposed in the new CAM GUI (including all advanced machining settings and strategies) is fully controllable via the API, or if some parts are still GUI-only.<br />
So my questions are:<br />
<ol type="1" class="mycode_list"><li>Is there a complete API coverage for the new CAM features?<br />
</li>
<li>Are there recommended best practices to fully automate the CAM → RoboDK → Robot program pipeline?<br />
</li>
<li>If some parameters are not yet available via the API, is there a roadmap to expose them in future releases?<br />
</li>
</ol>
Any guidance, examples, or best practices would be greatly appreciated.<br />
Thank you for your continuous development of RoboDK — it is an incredibly powerful platform for automated robotic machining workflows.<br />
<br />
Best regards,<br />
<br />
YEN-SHUO]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Do point objects have to be imported at the global level?]]></title>
			<link>https://robodk.com/forum/Thread-Do-point-objects-have-to-be-imported-at-the-global-level</link>
			<pubDate>Wed, 18 Feb 2026 17:36:46 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=8757">PhzyksDoesRobots</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Do-point-objects-have-to-be-imported-at-the-global-level</guid>
			<description><![CDATA[I have no issue importing multiple embedded user frames and targets and importing them exactly where I want in my RoboDK tree utilizing scripts. However, any 'physical' point objects seem to always go to the global level? Forces me to manually place points which can be time consuming for lots of points.]]></description>
			<content:encoded><![CDATA[I have no issue importing multiple embedded user frames and targets and importing them exactly where I want in my RoboDK tree utilizing scripts. However, any 'physical' point objects seem to always go to the global level? Forces me to manually place points which can be time consuming for lots of points.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Incorrect Destination Joints for Linear Move]]></title>
			<link>https://robodk.com/forum/Thread-Incorrect-Destination-Joints-for-Linear-Move</link>
			<pubDate>Wed, 04 Feb 2026 22:48:59 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=4812">SamuelEStreamline</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Incorrect-Destination-Joints-for-Linear-Move</guid>
			<description><![CDATA[Hello,<br />
<br />
I'm getting an issue where a linear move to a joint target does not move the robot to the correct joint target and also does not flag a reach error.<br />
<br />
I've attached an example simulation file.<br />
<br />
If you run the TRIM_WIRE_C2_1 program, the last instruction tells the robot to move linearly to target WR_C2_1.<br />
<br />
Target WR_C2_1 is a joint target with the following joint values:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>106.300000, -10.800000, -56.000000, -180.000000, 34.200000, 163.700000</code></div></div><br />
<br />
However, when the TRIM_WIRE_C2_1 program is executed, the final robot joints are:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>106.300000, -10.800000, -56.000000, 0.000000, -34.200000, -16.300000</code></div></div><br />
Can you explain why the robot is not moving to the correct joints?<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=7563" target="_blank" title="">Config_Issue.rdk</a> (Size: 4.24 MB / Downloads: 87)
]]></description>
			<content:encoded><![CDATA[Hello,<br />
<br />
I'm getting an issue where a linear move to a joint target does not move the robot to the correct joint target and also does not flag a reach error.<br />
<br />
I've attached an example simulation file.<br />
<br />
If you run the TRIM_WIRE_C2_1 program, the last instruction tells the robot to move linearly to target WR_C2_1.<br />
<br />
Target WR_C2_1 is a joint target with the following joint values:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>106.300000, -10.800000, -56.000000, -180.000000, 34.200000, 163.700000</code></div></div><br />
<br />
However, when the TRIM_WIRE_C2_1 program is executed, the final robot joints are:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>106.300000, -10.800000, -56.000000, 0.000000, -34.200000, -16.300000</code></div></div><br />
Can you explain why the robot is not moving to the correct joints?<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=7563" target="_blank" title="">Config_Issue.rdk</a> (Size: 4.24 MB / Downloads: 87)
]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Disable Splitting Linear movements]]></title>
			<link>https://robodk.com/forum/Thread-Disable-Splitting-Linear-movements</link>
			<pubDate>Fri, 16 Jan 2026 19:35:47 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=9032">Elie_Roy</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Disable-Splitting-Linear-movements</guid>
			<description><![CDATA[Hi, <br />
<br />
I am using accurate kinematics and I can't have Linear splitting along my moves. <br />
<br />
I still need to use some rounding due to the use case, but if there are too many moves it only slows down the robot and interfere with my cut speed.<br />
<br />
Is there a way to limit/disable splitting linear movement ?<br />
<br />
Thanks<br />
<br />
Élie]]></description>
			<content:encoded><![CDATA[Hi, <br />
<br />
I am using accurate kinematics and I can't have Linear splitting along my moves. <br />
<br />
I still need to use some rounding due to the use case, but if there are too many moves it only slows down the robot and interfere with my cut speed.<br />
<br />
Is there a way to limit/disable splitting linear movement ?<br />
<br />
Thanks<br />
<br />
Élie]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Function definition missing for some C++ functions]]></title>
			<link>https://robodk.com/forum/Thread-Function-definition-missing-for-some-C-functions</link>
			<pubDate>Wed, 14 Jan 2026 13:34:36 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=9864">Kuchinawa</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Function-definition-missing-for-some-C-functions</guid>
			<description><![CDATA[Hello RoboDK team,<br />
<br />
<br />
I'm trying to use the RoboDK C++ API for a project and I need to use the bool CollisionLine(tXYZ p1, tXYZ p2) function. However, it looks like the implementation for this function is missing in robodk_api.cpp.<br />
Is this intentional? And if so, is there a recommended alternative for performing collision checks between a line segment and the scene geometry?]]></description>
			<content:encoded><![CDATA[Hello RoboDK team,<br />
<br />
<br />
I'm trying to use the RoboDK C++ API for a project and I need to use the bool CollisionLine(tXYZ p1, tXYZ p2) function. However, it looks like the implementation for this function is missing in robodk_api.cpp.<br />
Is this intentional? And if so, is there a recommended alternative for performing collision checks between a line segment and the scene geometry?]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[UR Script - In RoboDK simulation]]></title>
			<link>https://robodk.com/forum/Thread-UR-Script-In-RoboDK-simulation</link>
			<pubDate>Tue, 16 Dec 2025 09:44:55 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=9703">Yahir</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-UR-Script-In-RoboDK-simulation</guid>
			<description><![CDATA[Hello RoboDK Community,<br />
<br />
I am currently working on my bachelor thesis and using RoboDK to simulate and analyze a process performed by a <span style="font-weight: bold;" class="mycode_b">UR16e cobot</span>. The application involves the <span style="font-weight: bold;" class="mycode_b">separation of hairpin pins in an electric motor stator</span>, and my goal is to better understand the robot motions and process parameters in simulation before testing on the real system.<br />
<br />
I already have the <span style="font-weight: bold;" class="mycode_b">URScript program from the real robot</span>, and I would like advice on the best way to use it for simulation in RoboDK. Specifically, I am considering two approaches:<br />
<ol type="1" class="mycode_list"><li>Rewriting the motions in <span style="font-weight: bold;" class="mycode_b">Python using the RoboDK API</span>, or<br />
</li>
<li>Rebuilding the robot program by <span style="font-weight: bold;" class="mycode_b">extracting waypoints and recreating the motion sequence</span> directly in RoboDK.<br />
</li>
</ol>
Since the process involves <span style="font-weight: bold;" class="mycode_b">contact and force interaction</span>, I would also appreciate recommendations on how to <span style="font-weight: bold;" class="mycode_b">reasonably approximate force-based behavior</span> in RoboDK (e.g., contact phases, penetration depth, speed changes), knowing that RoboDK is primarily a kinematic simulator.<br />
From your experience, which workflow would you recommend for this type of application, especially in the context of an academic study focused on motion analysis and process optimization?<br />
<br />
Thank you very much for your time and advice!]]></description>
			<content:encoded><![CDATA[Hello RoboDK Community,<br />
<br />
I am currently working on my bachelor thesis and using RoboDK to simulate and analyze a process performed by a <span style="font-weight: bold;" class="mycode_b">UR16e cobot</span>. The application involves the <span style="font-weight: bold;" class="mycode_b">separation of hairpin pins in an electric motor stator</span>, and my goal is to better understand the robot motions and process parameters in simulation before testing on the real system.<br />
<br />
I already have the <span style="font-weight: bold;" class="mycode_b">URScript program from the real robot</span>, and I would like advice on the best way to use it for simulation in RoboDK. Specifically, I am considering two approaches:<br />
<ol type="1" class="mycode_list"><li>Rewriting the motions in <span style="font-weight: bold;" class="mycode_b">Python using the RoboDK API</span>, or<br />
</li>
<li>Rebuilding the robot program by <span style="font-weight: bold;" class="mycode_b">extracting waypoints and recreating the motion sequence</span> directly in RoboDK.<br />
</li>
</ol>
Since the process involves <span style="font-weight: bold;" class="mycode_b">contact and force interaction</span>, I would also appreciate recommendations on how to <span style="font-weight: bold;" class="mycode_b">reasonably approximate force-based behavior</span> in RoboDK (e.g., contact phases, penetration depth, speed changes), knowing that RoboDK is primarily a kinematic simulator.<br />
From your experience, which workflow would you recommend for this type of application, especially in the context of an academic study focused on motion analysis and process optimization?<br />
<br />
Thank you very much for your time and advice!]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Item Limit in Collision Map]]></title>
			<link>https://robodk.com/forum/Thread-Item-Limit-in-Collision-Map</link>
			<pubDate>Mon, 08 Dec 2025 20:41:50 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=4812">SamuelEStreamline</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Item-Limit-in-Collision-Map</guid>
			<description><![CDATA[Hello,<br />
<br />
Is there a maximum number of items that a collision map can consider? At the end of populating a station, I set all the collision pairs using `Robolink.setCollisionActivePair()`. For some of my larger programs (more items) the collision map seems to unintentionally get reset and loose all the mapping. I have run some tests and found that, if I add one more additional item to the station, the collision map gets reset.]]></description>
			<content:encoded><![CDATA[Hello,<br />
<br />
Is there a maximum number of items that a collision map can consider? At the end of populating a station, I set all the collision pairs using `Robolink.setCollisionActivePair()`. For some of my larger programs (more items) the collision map seems to unintentionally get reset and loose all the mapping. I have run some tests and found that, if I add one more additional item to the station, the collision map gets reset.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[ROS2 Support and Arduino extruder synchronize]]></title>
			<link>https://robodk.com/forum/Thread-ROS2-Support-and-Arduino-extruder-synchronize</link>
			<pubDate>Sun, 07 Dec 2025 13:19:20 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=9063">zejian</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-ROS2-Support-and-Arduino-extruder-synchronize</guid>
			<description><![CDATA[Hello RoboDK team,<br />
<div style="text-align: left;" class="mycode_align"> </div>
<div style="text-align: left;" class="mycode_align">Our institute has currently used a <span style="font-weight: bold;" class="mycode_b">RoboDK research license</span>. We are working on 3D printing infill algorithms and slicer extrusion trajectory simulation using a <span style="font-weight: bold;" class="mycode_b">KUKA KRC2</span> robot.</div>
<div style="text-align: left;" class="mycode_align"> </div>
<div style="text-align: left;" class="mycode_align">I have three specific technical questions regarding roboDK API functions:</div>
<div style="text-align: left;" class="mycode_align"> </div>
<div style="text-align: left;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">1.<span style="font-size: 1pt;" class="mycode_size"><span style="font-family: Times New Roman;" class="mycode_font">      </span></span>Ubuntu and ROS2 environment:</span></div>
<div style="text-align: left;" class="mycode_align">Is roboDK compatible with Ubuntu? Specifically, we aim to run program within a <span style="font-weight: bold;" class="mycode_b">ROS2 environment</span>. Is it possible to import <span style="font-weight: bold;" class="mycode_b">URDF files</span> to control the robot model for real-time, synchronized online manipulation under this OS?</div>
<div style="text-align: left;" class="mycode_align"> </div>
<div style="text-align: left;" class="mycode_align">2.<span style="font-size: 1pt;" class="mycode_size"><span style="font-family: Times New Roman;" class="mycode_font">      </span></span><span style="font-weight: bold;" class="mycode_b">Script line limits (Research License)</span>: </div>
<div style="text-align: left;" class="mycode_align">We plan to try first generating KUKA KRC2 controller motion instructions for large scale 3D printing tasks via <span style="font-weight: bold;" class="mycode_b">Offline Programming </span>in roboDK. Does the standard academy research license impose any <span style="font-weight: bold;" class="mycode_b">limit on the number of lines</span> for the generated program files? </div>
<div style="text-align: left;" class="mycode_align">(the generated <span style="font-weight: bold;" class="mycode_b">.src file</span> for full-scale printed object in one-time)</div>
<div style="text-align: left;" class="mycode_align"> </div>
<div style="text-align: left;" class="mycode_align">3.<span style="font-size: 1pt;" class="mycode_size"><span style="font-family: Times New Roman;" class="mycode_font">      </span></span><span style="font-weight: bold;" class="mycode_b">External Extruder Synchronization (Arduino + Online Programming)</span> </div>
<div style="text-align: left;" class="mycode_align">Now we have a pellet screw 3D printing extruder driven by an <span style="font-weight: bold;" class="mycode_b">Arduino MEGA2560</span> with a <span style="font-weight: bold;" class="mycode_b">W5500 Ethernet Shield. </span></div>
<div style="text-align: left;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">Goal:</span> To achieve synchronized both controller motion between the KRC2 robot driver and the stepper motor extruder by roboDK software.</div>
<div style="text-align: left;" class="mycode_align">In Online Programming mode, is it feasible to establish a UDP/TCP protocol connection over standard IPv4 networking between the user’s PC (running RoboDK) and the Arduino Ethernet module to synchronize the KRC2 robot motion with the Arduino controlled stepper motor extruder screw speed adjustment?</div>
<div style="text-align: left;" class="mycode_align">Which method is relatively simpler to implement and higher reliability?</div>
<div style="text-align: left;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"> </span></div>
<div style="text-align: left;" class="mycode_align">Thank you for your support.</div>
 <br />
Gong, Zejian]]></description>
			<content:encoded><![CDATA[Hello RoboDK team,<br />
<div style="text-align: left;" class="mycode_align"> </div>
<div style="text-align: left;" class="mycode_align">Our institute has currently used a <span style="font-weight: bold;" class="mycode_b">RoboDK research license</span>. We are working on 3D printing infill algorithms and slicer extrusion trajectory simulation using a <span style="font-weight: bold;" class="mycode_b">KUKA KRC2</span> robot.</div>
<div style="text-align: left;" class="mycode_align"> </div>
<div style="text-align: left;" class="mycode_align">I have three specific technical questions regarding roboDK API functions:</div>
<div style="text-align: left;" class="mycode_align"> </div>
<div style="text-align: left;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">1.<span style="font-size: 1pt;" class="mycode_size"><span style="font-family: Times New Roman;" class="mycode_font">      </span></span>Ubuntu and ROS2 environment:</span></div>
<div style="text-align: left;" class="mycode_align">Is roboDK compatible with Ubuntu? Specifically, we aim to run program within a <span style="font-weight: bold;" class="mycode_b">ROS2 environment</span>. Is it possible to import <span style="font-weight: bold;" class="mycode_b">URDF files</span> to control the robot model for real-time, synchronized online manipulation under this OS?</div>
<div style="text-align: left;" class="mycode_align"> </div>
<div style="text-align: left;" class="mycode_align">2.<span style="font-size: 1pt;" class="mycode_size"><span style="font-family: Times New Roman;" class="mycode_font">      </span></span><span style="font-weight: bold;" class="mycode_b">Script line limits (Research License)</span>: </div>
<div style="text-align: left;" class="mycode_align">We plan to try first generating KUKA KRC2 controller motion instructions for large scale 3D printing tasks via <span style="font-weight: bold;" class="mycode_b">Offline Programming </span>in roboDK. Does the standard academy research license impose any <span style="font-weight: bold;" class="mycode_b">limit on the number of lines</span> for the generated program files? </div>
<div style="text-align: left;" class="mycode_align">(the generated <span style="font-weight: bold;" class="mycode_b">.src file</span> for full-scale printed object in one-time)</div>
<div style="text-align: left;" class="mycode_align"> </div>
<div style="text-align: left;" class="mycode_align">3.<span style="font-size: 1pt;" class="mycode_size"><span style="font-family: Times New Roman;" class="mycode_font">      </span></span><span style="font-weight: bold;" class="mycode_b">External Extruder Synchronization (Arduino + Online Programming)</span> </div>
<div style="text-align: left;" class="mycode_align">Now we have a pellet screw 3D printing extruder driven by an <span style="font-weight: bold;" class="mycode_b">Arduino MEGA2560</span> with a <span style="font-weight: bold;" class="mycode_b">W5500 Ethernet Shield. </span></div>
<div style="text-align: left;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">Goal:</span> To achieve synchronized both controller motion between the KRC2 robot driver and the stepper motor extruder by roboDK software.</div>
<div style="text-align: left;" class="mycode_align">In Online Programming mode, is it feasible to establish a UDP/TCP protocol connection over standard IPv4 networking between the user’s PC (running RoboDK) and the Arduino Ethernet module to synchronize the KRC2 robot motion with the Arduino controlled stepper motor extruder screw speed adjustment?</div>
<div style="text-align: left;" class="mycode_align">Which method is relatively simpler to implement and higher reliability?</div>
<div style="text-align: left;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"> </span></div>
<div style="text-align: left;" class="mycode_align">Thank you for your support.</div>
 <br />
Gong, Zejian]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Post Edit for KRC4 with Sample CSV code]]></title>
			<link>https://robodk.com/forum/Thread-Post-Edit-for-KRC4-with-Sample-CSV-code</link>
			<pubDate>Sat, 06 Dec 2025 19:36:56 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://robodk.com/forum/member.php?action=profile&uid=9656">rusterholztc</a>]]></dc:creator>
			<guid isPermaLink="false">https://robodk.com/forum/Thread-Post-Edit-for-KRC4-with-Sample-CSV-code</guid>
			<description><![CDATA[I recently acquired an RMC10 robot cell from Robotic Solutions including a KR10 R1100-2 and rotary with tool changer. My workflow is Rhinocam to RoboDK and they recommended reaching out to finalize the post-processor. I have a sample CSV code with parameters I need to pump into the post. Are there any resources or services to create this post? In the meantime, attached is a sample src with 2 tool changes for reference.  Any info is much appreciated.<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/txt.png" title="Text Document" border="0" alt=".txt" />
&nbsp;&nbsp;<a href="attachment.php?aid=7477" target="_blank" title="">csv.txt</a> (Size: 21.38 KB / Downloads: 79)
]]></description>
			<content:encoded><![CDATA[I recently acquired an RMC10 robot cell from Robotic Solutions including a KR10 R1100-2 and rotary with tool changer. My workflow is Rhinocam to RoboDK and they recommended reaching out to finalize the post-processor. I have a sample CSV code with parameters I need to pump into the post. Are there any resources or services to create this post? In the meantime, attached is a sample src with 2 tool changes for reference.  Any info is much appreciated.<br />
<br />
<img src="//cdn.robodk.com/forum/images/attachtypes/txt.png" title="Text Document" border="0" alt=".txt" />
&nbsp;&nbsp;<a href="attachment.php?aid=7477" target="_blank" title="">csv.txt</a> (Size: 21.38 KB / Downloads: 79)
]]></content:encoded>
		</item>
	</channel>
</rss>