In addition to what @matthewd92 said, you can also use the get_tcp_force() function to get only specific forces or moments instead of the norm of the x-y-z forces.
That’s where I would start to look at reducing times. You could then look to open the socket just once for the program and use that open socket, we do that as well but it needs to be a connection that is long lived so that the server doesn’t close the connection if data is not received for a period of time. I do not recommend to just keep opening sockets in a thread as you would be opening a lot of unneeded sockets and could cause performance issues on the robot or the server. Unfortunately UR does not provide any methods for determining if the socket is open or closed, so you could write your own where you make a request to the server and so long as it does not time out you know the server connection remains open, on a timeout event you could reopen the socket.
In my experience though its not a huge detriment unless I’m talking to the server non-stop. Then UR has a better tool for that called xmlrpc but it requires you to have an xmlrpc server not just a simple tcp socket. Once you understand how to write the server, and there are libraries to do that depending on what language you are using, they are very easy to use and very performant. We are sending multiple commands within a single sync cycle of the robot.
The latest products in Robotiq's line-up Grippers were officially launched last week at Automate ! Meet the EPick and AirPick, the first UR+ vacuum grippers ready for the new e-Series generation of Universal Robots.
The EPick gets easily connected to the cobot wrist and needs no air supply. The AirPick vacuum is low noise, has a powerful flow and has a compact design for cobots. Vacuum grippers have a smooth handling for your applications as palletizing, packaging, pick and place, machine tending and assembly.
Get yours and Program and install, as easy as 1-2-3:
Plug + Play
See the introduction video here .
In your case, you would have the following:
Looks like the pallet wizard has changed a bit since Polyscope 3.9. I have redone the program sequence and did put the If statement out of the pallet wizard in the program tree. Everything works as expected. Find the program attached. Note that I used some relative waypoints inside the if statement.
Updating the Force Copilot URCap to version 1.9.2 and PolyScope to version 5.3.1 should solve your issue.
If you are not having any problem with your Gripper, it's not necessary to update its firmware. However, if you are still willing to do so, you can update it directly on the robot in the "About" section of the Gripper installation tab. Just so you know, it will only work if plugged into the controller using a 10m cable and RS485-USB converter. It won't work if the Gripper is communicating through a Robotiq Wrist Camera or through the e-Series tool connector.