Robot Workflow Recipe

The mesh network portal with a GUI addresses the inefficiencies of conventional robot configuration by allowing users to select and invoke recipes for robotic tasks, efficiently configuring and reconfiguring robotic workcells to handle multiple industrial processes.

JP2025515579APending Publication Date: 2025-05-20FLEXXBOTICS INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024560776
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-04-12
Filing Date
2023-04-12
Publication Date
2025-05-20

AI Technical Summary

Technical Problem

Conventional approaches to configuring and invoking collaborative industrial robots require manual reconfiguration and file transfer to launch new robot programs for producing different parts, which is inefficient and labor-intensive.

Method used

A mesh network portal with a graphical user interface (GUI) that allows users to select and invoke recipes for robotic tasks, transmitting corresponding configuration commands, robot programs, and guidance media to configure and reconfigure robotic workcells efficiently.

Benefits of technology

Enables efficient configuration and reconfiguration of robotic workcells with a single recipe selection, reducing manual labor and increasing flexibility in handling multiple industrial processes without the need for dedicated robots.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025515579000001_ABST
    Figure 2025515579000001_ABST
Patent Text Reader

Abstract

The mesh network portal provides a graphical user interface (GUI) for invoking and managing multiple robotic workcells, such that each workcell includes a robot and associated peripherals for performing a job. A job performs a robotic task, such as generating a part or other set of robotic instructions for a discrete, quantifiable work product. The portal is in network communication with a hub for each of the multiple workcells and maintains a set of recipes corresponding to jobs that can be selected for each of multiple robots in the workcell. The GUI allows for the selection of a workcell and for identifying recipes available for the workcell based on the robot and peripherals in the workcell. Once a recipe is selected, the workcell begins executing the recipe, including robotic guidance elements for performing the robotic task.
Need to check novelty before this filing date? Find Prior Art

Description

[Background technology]

[0001] background The robotics industry has been growing in recent decades as advances in cost and precision have enabled robotics to address an increasing number of industrial processes involving repetitive motions. Large industrial robots are used in heavy equipment manufacturing and typically require fixed-position dedicated task machines that require significant capital investment. More recently, smaller general-purpose utility robots have emerged, with more generalized operational capabilities that can be applied to multiple industrial tasks, typically by reconfiguring and reprogramming the robot with instructions to perform specific industrial processes. These general-purpose industrial or utility robots are more flexible than larger dedicated robots, but still require configuration and programming to complete robotic tasks. Summary of the Invention [Means for solving the problem]

[0002] overview The mesh network portal provides a graphical user interface (GUI) for invoking and managing multiple robotic workcells, each of which includes a robot and associated peripherals for performing a job. A job performs a robotic task, which typically executes a set of robotic instructions for a discrete, quantifiable work product, such as producing a part. The portal is in network communication with a hub for each of the multiple workcells and maintains a set of recipes corresponding to selectable jobs for each of the multiple robots in the workcell. The GUI allows the user to select a workcell and identifies recipes available for the workcell based on the robots and peripherals in the workcell. Upon selection, a list of recipes available for the workcell is displayed. Selecting a recipe, e.g., a part to be manufactured, expands the available versions of the recipe below the selection in a pull-down format. Selecting a version of the recipe initiates execution of the recipe by the workcell, including sending configuration files for setting robot parameters, instructions or program files containing machine code for performing the robotic tasks, and instructional media such as text and video to assist the robot operator in performing the job.

[0003] The configurations herein are based in part on the observation that industrial robots, such as six-axis collaborative utility robots, are often configured and activated to complete multiple tasks (jobs) through reconfigurations and different programs that allow the robot to perform various tasks, such as manufacturing a specific part used in a larger device or machine. As discussed in co-pending U.S. patent application Ser. No. 17 / 381,834, entitled "MESH NETWORK OF RECONFIGURABLE ROBOTS," filed July 21, 2021, and incorporated herein by reference, multiple robots interconnected by a mesh network are reconfigurable by identifying the configurations and commands each robot requires to perform a task to complete a distinct, quantifiable result, such as CNC machining of a desired part or finished product.

[0004] Unfortunately, conventional approaches to configuring and invoking collaborative industrial robots suffer from the drawbacks of manual reconfiguration and file transfer to launch new robot programs to produce different parts. Thus, the configuration herein substantially overcomes the drawbacks of conventional approaches by providing a portal in network communication with an array of robots, such as an industrial or manufacturing facility, and invoking a GUI on the portal to select and invoke a recipe for a job that identifies and transmits corresponding configuration commands (files), robot programs to perform robotic tasks, and associated guidance media to assist a human operator, collectively referred to as robot guidance elements. The GUI maintains the status of each robot and the recipes available for jobs on the robot based on the available peripherals in the workcell and the robot's capabilities to perform the requested job. In this manner, each workcell may be configured and reconfigured as needed with a single recipe selection to provide the workcell with the necessary configurations, programs, and support media.

[0005] The mesh network controller includes portals and GUIs for multiple collaborative utility robots located around an industrial environment or facility. The portals monitor and control the utility robots as they move and relocate around the industrial environment to participate in an industrial process and receive a process-specific control program or set of instructions to perform the utilization tasks required by the industrial process. Upon completion or demand, the engaged utility robot may receive a subsequent recipe for another job and process the specific set of instructions for the subsequent job. In this manner, a relatively small number of utility robots may be located and redeployed around the industrial environment to accommodate processes that do not require a dedicated utility robot to be deployed at all times. In other words, each robot does not need to be configured indefinitely to perform only one specific task or job.

[0006] The configurations herein employ so-called six-axis robots weighing approximately 30-60 pounds that are sufficiently portable to be moved around an industrial environment, such as a factory or shop floor, to handle multiple processes alternately or periodically as needed. These robots may also be referred to as collaborative robots, and the techniques herein are applicable to any suitable type of industrial robot, based on the type of programs that are initiated and executed to perform the utilization tasks.

[0007] In the particular configuration shown below, a collaborative utility robot is employed in an industrial environment to perform various tasks by simply invoking a corresponding recipe. A network controller or server establishes a mesh network of beacons spaced around the industrial environment and communicates using mesh network protocols such as WiFi, Bluetooth, Thread or Zigbee. Other suitable network media may also be employed to couple portals to multiple hubs and constituent robots in an industrial environment. The network controller uses an array of beacons placed around the industrial environment to provide a wireless interface to each robot and supporting machinery and sensors, realizing a reconfigurable utility robot deployment for multiple industrial processes responsive to robotic control. A hub couples to each beacon in the array of beacons via the mesh network, and the hub is operable to transmit a set of instruction messages for each of the utilization tasks to provide the robotic guidance element.

[0008] BRIEF DESCRIPTION OF THE DRAWINGS The foregoing and other objects, features and advantages of the present invention will become apparent from the following description of specific embodiments of the invention as illustrated in the accompanying drawings, in which like reference characters refer to the same parts throughout the different views. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the invention. [Brief description of the drawings]

[0009] [Figure 1] FIG. 1 is a context diagram of a collaborative robot environment suitable for use in the configurations herein. [Diagram 2] FIG. 2 is a block diagram of the workflow from the portal to the workcell of FIG. 1. [Diagram 3] 2 illustrates the interfaces provided by the hub of FIG. 1. [Figure 4A] 1 and 2 show a recipe implementation of a robotic guidance element via the hub based on the recipe. [Figure 4B] 1 and 2 show a recipe implementation of a robotic guidance element via the hub based on the recipe. [Diagram 5] 3 shows a flowchart of a recipe call on the network of FIGS. 1 and 2. [Figure 6] 5 shows a GUI for invoking a workcell as described in FIG. [Figure 7] Figure 5 shows the selection of a recipe that defines a job for a part number. [Figure 8] 7 shows the start of the version of the job in FIG. [Figure 9] 1 and 2, a status screen of multiple jobs invoked via a portal is shown. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0010] Detailed Description In the following description, an example industrial environment includes multiple work cells for robots to receive and execute recipes, and associated sensors and / or peripherals that complement the tasks (jobs) performed by the robots.

[0011] FIG. 1 is a context diagram of a collaborative robot environment suitable for use in the configurations herein. With reference to FIG. 1, a portal 101 and a number of hubs 102-1..102-N (generally 102) are each defined by a computing device. The portal 101 renders a respective GUI (Graphical User Interface) on a monitor or other rendering device. In an industrial environment, a method for deploying a utility robot 150 includes identifying a stored recipe 110 including robot guidance elements for performing a robot task via a GUI (Graphical User Interface) 120. The GUI 120 is invoked to deploy the identified recipe 122-1..122-N (generally 122) to the hubs 102-1..102-N (generally 102) including the robot and the operator station. The submitted recipe 122 includes a set of robot guidance elements associated with initiating and executing the robot task. In a general sense, robotic guidance elements include robot configuration files for initializing a utility robot to perform a robotic task, machine instructions for directing a robot to perform repetitive operations to perform a robotic task, and work instructions renderable on an operator display to identify interactive elements for initiating a robotic task. These may also include, but are not limited to, work instructions, program files, digital media, process checks, monitoring tools, alerts and quality checks, etc., used in conjunction with the robotic tasks performed by a job. Other elements may also be included as needed for a particular robotic task. The GUI 120 also provides a recipe generator 114 for the development and assimilation of robotic guidance elements into a recipe for a particular job or robotic task.

[0012] Continuing with the block diagram of FIG. 1, the GUI 120 receives an operator's selection of a particular robotic task recipe 110 from the menu of available tasks 112. The portal 101 sends a deployed recipe 122, including associated files, for the selected robotic task to the corresponding hub 102, which initiates the robotic task based on the robot guidance elements in the received recipe 122. The hub 102 executes the selected job based on the deployed recipe by initiating the hub's robots 150 and other peripherals 152 or devices, collectively referred to as a workcell 170, that are invoked by the deployed recipe 122.

[0013] The portal 101 and multiple hubs 102-N connect to a mesh network 125 that joins the portal 101 and the hub 102. The portals render a GUI 120 for identifying recipes and connect to one or more hubs that communicate with the robots to execute the robotic tasks. At the hub 102, there may be a hub GUI 140 that responds to an operator's selection of multiple jobs 141-1..141-2 (generally 141) enabled at the hub for execution by the robot 150 in response to a recipe sent from the portal. The selected job 142 defines a robotic task, which is a physical interaction between the utility robot and one or more objects, such as peripherals 152 that are operated by or responsive to the utility robot 150, to achieve a quantifiable result from the physical interaction. In an exemplary configuration, the task may be the manufacture of a milled part. Each robot 150 and associated peripherals 152 collectively define a work cell 170 suitable for executing the robotic task defined by a particular job. Based on the selected job, the hub receives robot guidance elements corresponding to a recipe 122 and associates the recipe with a selected job 142 that can be executed by one or more robots 150. This may include sending robot guidance elements 154, such as vendor-specific machine instructions, to the robot, peripherals 156 for support or testing, some robot guidance elements, such as robot configuration programs and operator guidance media, may be utilized by the hub according to the recipe of the current job.

[0014] As an example of a robot task, a collaborative or industrial robot responsive to the hub may be a six-axis robot and may be associated with the hub 102 to perform tasks such as CNC machining, injection molding, welding, logistics, and other suitable tasks. In the CNC robot example, a recipe may be defined for each individual part to be machined by a set of CNC instructions. In this example, each part has a corresponding recipe that includes all the robotic guidance elements to machine the part. The corresponding job may have multiple revisions depending on the part variations. Once a recipe is selected, the robotic guidance elements include a set of machine instructions to instruct the CNC to cut (machine) the part, such as the cut path and depth to form the part from a monolithic block of aluminum. It also includes configurations that include settings or initialization commands for the robot, such as the cut speed, rotation speed, size of the monolithic block to cut, etc. Since each work cell is likely to be staffed with interactive staff, the recipe also includes a set of written instructions (text) and / or media such as instructional videos for guidance. Additionally, as shown in the co-pending application referenced above, the machine instructions include a mapping of cutting instructions to vendor-specific robot instructions to allow a recipe to cover multiple robots from different vendors.

[0015] Additionally, a recipe may include robot guidance elements, such as configuration files specific to a particular manufacturer's robot. Vendor-specific configuration files may be included as part of the recipe. A robot task may then be executed by identifying a link to a vendor-specific library, and including the robot guidance elements from the vendor-specific library in the deployed recipe, such that the vendor-specific library includes robot guidance elements specific to the respective vendor's robot. The vendor-specific library provides a communication translation layer between the robot executing the task and the CNC machine peripherals.

[0016] FIG. 2 is a block diagram of the portal to workcell workflow of FIG. 1. With reference to FIGS. 1 and 2, the portal 101 is operable to communicate with multiple hubs 102, each hub defining a workcell 170 of at least one robot 150 and associated peripherals 152. The workcell 170 communicates with a library of machine interfaces 160, each machine interface adapted to the vendor-specific command set of a particular machine 150'-1..150'-3. The portal 101 sends recipes to the robots via the corresponding hubs 102-N, and the hubs communicate with the portal through their respective interfaces without needing to query the robot manufacturer or type. This allows the same recipe to perform a particular task (e.g., machining a part) across multiple workcells 170, even if the workcells contain robots 150 from different vendors.

[0017] Figure 3 illustrates the interface provided by the hub of Figure 1. With reference to Figures 1-3, the hub 102 defines a machine interface between the robot 150 and a vendor-specific library or set of instructions 15O'-N for a vendor N. The recipe 122 is vendor independent in that it is centered around the job or part that is called for by the recipe 122, and is vendor independent because it can map vendor-specific commands or instructions based on machine instructions contained in the robot guidance elements obtained from the portal as part of the recipe.

[0018] 4A and 4B show the recipe implementation of the robot guidance element through the hub of FIG. 1 and FIG. 2 based on the recipe. With reference to FIG. 4A and 4B and continuing reference to FIG. 1-3, FIG. 4A shows a general command flow of machine instructions (vendor independent) from the recipe 122 to the CNC software that drives the CNC operation in the robot, typically the cutting path. The robot software defined in the recipe includes the machine instructions. From the machine instructions, commands 122-1 are received by the interface and mapped to vendor-specific guidance elements 154 depending on the vendor of the robot 150 in the work cell 170. FIG. 4B shows an example of control from the recipe 122 in the context of FIG. 1. The recipe 122 from the portal 101 is received at the hub 102 of the work cell 170. The machine instructions in the file 123, urp, received by the hub 102 are applicable to multiple vendors. The generic command list separates this into commands 122-1, which are mapped to an interface library 150' where they are separated into machine vendor C based on the manufacturer of the robot 150 in the workcell, and a robot guidance element 154 corresponding to vendor C's robot is sent.

[0019] FIG. 5 shows a flow chart 500 of recipe invocation on the network of FIGS. 1 and 2 for deploying utility robots in an industrial environment. With reference to FIGS. 1-5, a user instructs the portal 101 to connect to a mesh network 125, as shown in step 502. The mesh network 125 couples the portal 101, which renders a GUI for identifying a recipe, and one or more hubs 102, which communicate with the robots to perform the robotic tasks. The user uses the GUI to identify a recipe, which includes robotic guidance elements for performing the robotic tasks, as shown in step 504. The portal 101 has an interface to each of a plurality of robots through the hubs 102 connected through the mesh network 125, as shown in step 506. In the industrial environment, a plurality of recipes are available through the GUI, and each recipe 122 is executable by one or more of a plurality of robots in communication with the mesh network, as disclosed in step 508.

[0020] The GUI renders a number of workcells, further shown at the bottom of FIG. 6, such that each workcell 170 is associated with one or more of a number of recipes for completing the job called by the recipe. 122, as shown in step 510. The portal 101 receives the selection of the workcell via the GUI, as shown in step 512. The GUI renders a set of jobs that can be performed on the workcell 170 based on the robot 150 in the selected workcell and the available peripherals 152 in the workcell, as shown in step 514. Each workcell includes supporting peripherals that may be used for the selected job, and typically also includes an operator screen that may also utilize the guidance medium of the recipe. The portal 101 receives the selection of the job and calls the robot 150 in the workcell 170 to perform the selected job by sending the robot guidance element 154, including the configuration file and the instruction file, to the robot 150 via the hub 102, as shown in step 516. In an exemplary configuration illustrating the manufacturing of a CNC product, a job defines the manufacture of a part based on a part called for by the job, and the job includes a robotic guidance element to direct a CNC machine to traverse a cutting plan to manufacture the part, as shown in step 518.

[0021] In some configurations, the robotic guidance elements include machine instructions (files), drivers, or proprietary work instructions. In such instances, it is preferable to access the elements through an external connector, which ensures that the external elements are maintained on-premise in the mesh network, ensuring security. Depending on customer and security requirements, the files and instructions may also be stored via internal databases, such as ERP (Enterprise Resource Planning) and MES (Manufacturing Execution System) systems. In such cases, a connector is used to retrieve the correct file revision to be associated with the corresponding recipe. This is accomplished through a library of external business connectors for vendor-specific systems. Other security and encryption may also be applied to such external connectors. Thus, at step 520, a check is performed to determine whether the selected recipe 122 includes an external connector. If so, the portal 101 identifies an external storage location for the robotic guidance elements in the recipe, as shown in step 522, and establishes an external network connection to the external storage location via a public access network, as shown in step 524. This may require a secure internet connection, or other appropriate public or private network protection. When the recipe is invoked, a job is initiated using the robot-guided elements (files, commands, drivers, etc.) in the external storage location by maintaining access to the robot-guided elements limited to the on-premise storage of the robot-guided elements, as shown in step 526.

[0022] The portal then deploys the identified recipe 122 to the hub 102 if the corresponding workcell 170 includes at least one robot 150 and operator station for completing the job corresponding to the selected recipe. In step 530, a check is performed to determine whether a new job needs to be invoked for a workcell, and in step 532, a further check is performed to select a new workcell.

[0023] Figure 6 illustrates a GUI 500 for invoking a work cell 170 as described in Figures 1-5. With reference to Figures 1-6, the portal 101 renders the GUI 500 including a top level menu 510 and a selection of icons 570-1..570-10 (generally 570) corresponding to work cells 170 available in the mesh network 125. For each icon 570, the status 512 of the respective work cell 170 displays the current activity. A job 514 indicates the selected recipe 122 for making the part, and the part count 516, failure count 518, and time information 520 are displayed. The corresponding order 522 is also displayed.

[0024] Figure 7 illustrates the selection of a recipe that defines a job for a part number as in Figures 5-6. Selecting a workcell 570 displays the job, which includes a list 610 of parts that can be produced by the corresponding workcell 170.

[0025] Selecting 610' displays the version history 612 for the part. A version represents a tweak to the job / recipe 122 and there can only be one version of the selected job 610'. Once selected, the status row 602 repeats the part number, selected job 610', and status 512 along with the selected workcell 670-1.

[0026] Figure 8 shows the start of a version of the job of Figure 7. For the selected version 612', the recipe details are displayed, including modules 710, program files 712, digital steps 714 or instructional media, and notes 716. Figure 9 shows a status screen for multiple jobs invoked via a portal similar to Figures 1 and 2. In Figure 9, a robot status screen 900 displays quantitative metrics for a selected robot 902.

[0027] The exemplary configuration shows a robot performing CNC machining from a recipe 122 of an individual manufactured part. Other contexts and uses of the robot may be invoked for any robot task resulting from an object or configuration recipe. In the CNC example above, the GUI identifies a recipe 122 that corresponds to a task for manufacturing a part by a robot in a work cell. The corresponding hub 101 receives machine instructions based on the recipe to direct a CNC cutting head to manufacture the part. This includes configuring the robot for CNC machining of the part based on the recipe and executing the machine instructions on the robot depending on the recipe selection. The recipe 122 includes all the robot guidance elements 154 including the machine instructions to guide the robot. In the exemplary configuration, the recipe includes G-code machine instructions for CNC machining, but any suitable machine instructions may be invoked by the recipe.

[0028] Those skilled in the art will readily appreciate that the programs and methods defined herein can be delivered to user processing and rendering devices in a variety of forms, including, but not limited to, a) information persistently stored on non-writable storage media such as ROM devices, b) information mutably stored on writable non-transitory storage media such as solid state drives (SSDs) and media, flash drives, floppy disks, magnetic tapes, CDs, RAM devices, and other magnetic and optical media, or c) information transmitted to a computer over a communications medium such as an electronic network such as the Internet or telephone modem lines. The operations and methods may be implemented in software executable objects or as a set of encoded instructions executed by a processor responsive to instructions, including virtual machines and hypervisor-controlled execution environments. Alternatively, the operations and methods disclosed herein may be embodied in whole or in part using hardware components such as application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), state machines, controllers, or other hardware components or devices, or a combination of hardware, software, and firmware components.

[0029] While the systems and methods defined herein have been particularly shown and described with reference to embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the scope of the invention as encompassed by the appended claims.

Claims

1. Identifying a recipe including robotic guidance elements for performing a robotic task via a graphical user interface (GUI); deploying the identified recipe to a hub including a robot and an operator station; Initiating the robot task based on the robot guidance elements in the received recipe. A method for deploying utility robots in industrial environments, including:

2. Receiving an operator selection for a particular robotic task; Identifying the deployed recipe for the selected robotic task; and executing the selected job based on the deployed recipe; The method of claim 1 further comprising:

3. 10. The method of claim 1, further comprising: connecting to a mesh network, the mesh network coupling a portal, the portal rendering the GUI for identifying the recipe, and one or more hubs communicating with the robot to execute the robotic task.

4. 2. The method of claim 1 , wherein the robot guidance elements include a robot configuration file for initializing the utility robot to perform the robotic task, machine instructions for directing the robot to perform repetitive operations to perform the robotic task, and work instructions renderable on an operator display for identifying interactive elements for initiating the robotic task.

5. rendering the GUI through a portal, the portal having an interface to each of a plurality of the robots via a mesh network; transmitting the recipe to the robot via a hub, the hub communicating with the portal via a respective interface; The method of claim 1 further comprising:

6. The recipe further includes a plurality of recipes, each recipe executable by one or more of a plurality of robots in communication with the mesh network; 6. The method of claim 5, further comprising: rendering a plurality of workcells, each workcell associated with one or more of the plurality of recipes to complete a job called by the recipe.

7. receiving a selection of a workcell; rendering a set of jobs executable by the workcell based on the robot in the selected workcell and one or more peripheral devices in the workcell; Receiving a selection of a job; Invoking the robot in the workcell to perform the selected job by sending a configuration file and an instruction file to the robot via the hub; The method of claim 5 further comprising:

8. 6. The method of claim 5, wherein the job defines a part manufacture based on a part called for by the job, the job including a robotic guidance element for directing a CNC machine to traverse a cutting plan to manufacture the part.

9. identifying an external storage location for a robot-guided element within the recipe; establishing an external network connection to the external storage location via a public access network; Initiating the job using the robotic guided element at the external storage location by maintaining access to the robotic guided element limited to an on-premise storage of the robotic guided element; The method of claim 5 further comprising:

10. Identifying a recipe corresponding to a task for manufacturing the part; receiving machine instructions for directing a CNC cutting head to manufacture the part based on the recipe; configuring the robot for CNC machining of the part based on the recipe; executing the machine instructions on the robot in response to a selection of the recipe; The method of claim 1 further comprising:

11. determining that the recipe references a robotic guidance element within an external enterprise business system; referencing a vendor-specific library from the recipe to identify an external connector for providing remote access to the external enterprise business system; accessing the robotic guidance element via the identified external connector to maintain the robotic guidance element to the portal on-premise; The method of claim 4 further comprising:

12. The method of claim 1 , wherein the recipe includes G-code machine instructions for CNC machining.

13. 2. The method of claim 1 , wherein the robot task is a physical interaction between a utility robot and one or more objects manipulated by the utility robot to achieve a quantifiable result from the physical interaction.

14. receiving the robot guidance element corresponding to a recipe from a GUI; Associating the recipe with a job that can be executed by one or more of the robots; The method of claim 1 further comprising:

15. identifying a link to a vendor-specific library, the vendor-specific library including robot guidance elements specific to each of the vendor's robots; including robot guidance elements from the vendor-specific library in the deployed recipe; accessing the vendor-specific library through the hub, the hub communicating with a plurality of vendor-specific libraries for a plurality of respective vendors; The method of claim 1 further comprising:

16. a graphical user interface (GUI) configured to identify a recipe including robotic guidance elements for performing a robotic task; an interface to a hub for deploying the identified recipe to the hub, the hub defining a workcell including a robot and an operator station; A plurality of files defining the robot guidance elements for instructing the robot to initiate the robot task; A mesh network portal for deploying utility robots in an industrial environment.