How Flexx CNC Works!
The Flexx CNC acts as a translator sitting between your UR Robot’s Polyscope Interface and the connected CNC Machine Tool. Once the Flexx CNC URcap is installed on your UR and activated, you’ll find extra nodes in your UR programming interface, including:
Flexx Start Cycle
Flexx Wait for CNC
Flexx Peripheral Nodes
Flexx Select CNC
Flexx Select G-code
These nodes can be placed in your UR program along with the usual wait, move, and logic nodes you may be familiar with to create a program in which your UR and CNC collaborate seamlessly!
An overview of these nodes can be found in our manual, here:
https://flexxbotics.atlassian.net/wiki/spaces/FD/pages/9666575/User+Manual+-+Flexx+CNC#Overview-of-Program-Nodes
A Step by Step process for using these nodes can also be found in the manual, here:
https://flexxbotics.atlassian.net/wiki/spaces/FD/pages/9666575/User+Manual+-+Flexx+CNC#Step-by-Step-Programming-Guide
Flexx CNC Nodes and the “Flow of Control”
When the UR program reaches a Flexx CNC node, a command is sent to the middle ware box, processed, and used to affect change on the CNC via the ethernet connection. While that information is processed or the CNC is active, the node that sent that command will block, meaning the program will not advance until the middleware is finished processing or the Flexx Wait for CNC node has detected the end of a machining operation. In these cases, the CNC has Control, and will cede control back to the UR when the G-code or CNC operation has completed.
Multitasking with the Flexx CNC
However, much like the logic native to the UR interface, any Flexx CNC Polyscope node can be threaded. This means the robot can continue other operations while a thread watches the Flexx Wait for CNC node, for example, waiting until the current G-code operation has finished. Here’s an example of a UR Program where a Robot organizes finished parts while the CNC machines a blank.
[THREADING EXAMPLE HERE]