Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5

Controlling two FANUC robots with using Sync External Axes

#1
I connected to two robots using RoboDK. I wrote a program in Python for those two tobots where they should work in sync, where one is welding and one is holding the object. I am using the option "Synchronize External Axes" and it works just fine in the simulation, but it does not work with real robots. Why is that? Do I need to implement some threading or is there something on the robots that needs to be configured? Thank you.
#2
You should properly output robot programs using the same system configuration you have in your robot controller. For example, different mechanisms could be seen as different groups or the external axis unit could be seen as an extension of the robot axes.

For example, the following variables allow you to control how you generate code for Fanuc robots:
  1. Set the turntable group (usually GP2 or GP3, set to None to not use a new group): TURNTABLE_GROUP = "GP2"
  2. Disable motion group heuristics and uses user defnined mapping: USE_VAR_AXES_MOTION_GROUP
  3. Motion group for each axis, default first 9 axes in group 1, then next 9 axes in group 2: AXES_MOTION_GROUP = [1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2]
Can you share your RDK project?
Can you share a sample robot program that was created for the Fanuc robot?
#3
Yes, of course, here is the example of the robot station:

Here is the robot station, previous one was the .py program


Attached Files
.py   Stanica_za_TEST_na_robotu_TRODIJELNO_KOLJENO.py (Size: 21.76 KB / Downloads: 3)
.rdk   Stanica_za_TEST_na_robotima_TRODIJELNO_KOLJENO_BACKUP.rdk (Size: 6.98 MB / Downloads: 4)
#4
Could you also share an LS program file generated using your Fanuc robot controller?
#5
I do not use a LS program, I directly control the robot through a py. script. Or do you mean the LS program for welding, grinding operations etc.?
#6
Yes, I meant an LS program to show how you want the program output to look like for your controller. Each controller can be configurerd in different ways to support external axes.

You can find the parameters you can configure with the default Fanuc post processor here:
https://robodk.com/post/Fanuc-RJ3
#7
(09-15-2025, 06:30 PM)Albert Wrote: Could you also share an LS program file generated using your Fanuc robot controller?

Here are the weld paths where the robots should work synchronously. Currently, I am controlling the robots directly with the .py script and when the welds should be performed I would like to access the LS script and execute it within my .py script. Is that possible?


Attached Files
.zip   Weld_paths.zip (Size: 5.04 KB / Downloads: 3)
#8
The programs you sent were created using RoboDK for your Fanuc robot controller.

I meant if you could provide programs that were created already for your Fanuc system. This will help understand how the target data is structured (basically how the axes are configured with the motion groups GP1 and GP2 or GP3) and properly configure the post processor.
  




Users browsing this thread:
1 Guest(s)