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

How to program robots that run independently and communicate with I/Os

#1
I have 2 JAKA Cobots in the RoboDK simulation, cobot1 to pick a cylinder and take the cylinder to ring assembling position, and finally feed the cylinder with the ring to the welding station. cobot2 to pick the finished product and place it in the box.

The 2 Cobots have to run independently and synchronously while they communicate with each other and the welding machine by I/O signals.

I found it difficult to make the simulation using robodk. It's easy to achieve in roboguide or robotstudio for the reason that each robot has its own controller, while robots of robodk share the same main program.

I gave it a try using thread function which is Not satisfactory, as we can see in the video: cobot1 has to wait for cobot2 before feeding, because of the call instruction.

.png   屏幕截图 2025-03-10 165953.png (Size: 35.47 KB / Downloads: 63)
anybody know how to simulate 2 robots in robodk smoothly as we can do using roboguide or robotstudio?
#2
You should use separate programs for separate robots and you should be able to run both robots simultaneously.

Can you share your current RoboDK project file? We may be able to help you better.
#3
(03-10-2025, 12:12 PM)Albert Wrote: You should use separate programs for separate robots and you should be able to run both robots simultaneously.

Can you share your current RoboDK project file? We may be able to help you better.


Attached Files
.rdk   Wielding Station_JAKA.rdk (Size: 11.81 MB / Downloads: 50)
#4
here is the simulation video


Attached Files
.mp4   RoboDK-Video-2025-03-11-10-41-29.mp4 (Size: 5.62 MB / Downloads: 49)
#5
I suggest using the "loop" option when running a thread instead of calling a thread multiple time.

Use one robot as a master and run the other one in loop, as a thread and slave it with IO to the master, this will make the programming much easier.

Right click on program -> check "Loop"
#6
(03-11-2025, 03:11 PM)Olivier Wrote: I suggest using the "loop" option when running a thread instead of calling a thread multiple time.

Use one robot as a master and run the other one in loop, as a thread and slave it with IO to the master, this will make the programming much easier.

Right click on program -> check "Loop"

I check the "Loop" Suggestion, and it works well.

As for the " Use one robot as a master and run the other one in loop, as a thread and slave it with IO to the master, this will make the programming much easier."
Could you please give me a simple example?
#7
(03-12-2025, 02:12 AM)lavaman Wrote:
(03-11-2025, 03:11 PM)Olivier Wrote: I suggest using the "loop" option when running a thread instead of calling a thread multiple time.

Use one robot as a master and run the other one in loop, as a thread and slave it with IO to the master, this will make the programming much easier.

Right click on program -> check "Loop"

I check the "Loop" Suggestion, and it works well.

As for the " Use one robot as a master and run the other one in loop, as a thread and slave it with IO to the master, this will make the programming much easier."
Could you please give me a simple example?


.png   main2.png (Size: 12.49 KB / Downloads: 46)
Is it the way "one robot as master while the other one in loop as slave?
  




Users browsing this thread:
1 Guest(s)