DoF - a Robotiq Community
Warning sign
The Dof Community was shut down in June 2023. This is a read-only archive.
If you have questions about Robotiq products please reach our support team.

Hello Pros, 

I have a bit of a come and go problem with 2 CB3 UR5 that work together. My program has a ''Init Variables'' section and the variables are all initialized in it. Usually it all runs well, but sometimes I get a error message saying : ''Variable_X  is  not initialized to a value'. We have seen this a few times, but it has never stopped the program from starting after a couple of tries and it would usually not come back after a reboot. But on this instance, it won't work at all, we have to reload the program, remove and add again the init or reboot the robot to be able to start the program and it can come back the next day.

 At first the variables in threads caused the problem, so we moved the ''wait'' in the threads to put it at the beginning of the thread instead of at the end. Our logic is that: this way, the init has time to be ''read'' by te robot before we ask about the variable (In our mind the init should be done before the before start anyway, but it does not appear to be the case). On most projects, we do it this way and don't have problems. But on those 2 robots it was inneficient. We think (we can't really prove it) that tracking program and thread execution makes it worse, so we try to limit that to a minimum in all our projects.

Additionnal info that might be special in the programs:
Both robots have about 10 threads in them to communicate to, activate or monitor differents machines surrounding them or to choose the right movements for the robot depending on the next piece to take. 

Both robot have about 10 subprograms and the main is essentially a list of subprogram calls.   ( we have made robot with more threads and more subprograms that do not have this problem)

Both robot use a lot of modbus communication, on one of them we litterally hit the limit number or register/Digital IO that we can add in the installation. This is about 50 total, maybe 10 registers and 40 digital IO. The other one might have about 20. There are about 5 device that are on the modbus network. (this was the first time we maxed out the modbus)

Has any of you ever got this problem / found the solution?