INTEGRATED FRONT-OF-HOUSE AND BACK-OF-HOUSE RESTAURANT AUTOMATION SYSTEM
An integrated front-of-house and back-of-house restaurant operations system integrates automated and manual restaurant operations into an order-based system. The system interfaces with disparate devices and systems to provide order-based monitoring and control of operations within an establishment.
1 . A method for automated production of a consumable item, comprising:
receiving, via a network, an order for the consumable item;
identifying, based on the order, a plurality of consumable components;
identifying, based on the plurality of consumable components and the order, a plurality of electromechanical operations to process one or more of the consumable components;
generating an order data structure based on the electromechanical operations and consumable components; and
providing instructions based on the order data structure to each of a plurality of electromechanical components to perform the electromechanical operations, wherein the electromechanical components automatically prepare the consumable item from the consumable components in response to the instructions.
2 . The method of claim 1 , wherein the automatic preparation of the consumable item comprises:
monitoring, by one or more sensing devices, the processing of the consumable components by one or more of the electromechanical operations; and
updating the instructions based on the monitoring.
3 . The method of claim 2 , wherein updating the instructions comprises identifying one or more supplementary electromechanical operations.
4 . The method of claim 2 , further comprising updating one or more of the electromechanical operations based on the monitoring, and wherein updating the instructions comprises providing instructions to perform the one or more updated electromechanical operations.
5 . The method of claim 2 , wherein updating the instructions comprises identifying one or more additional consumable components.
6 . The method of claim 5 , further comprising identifying a supplemental electromechanical operation to replace one or more of the consumable components with the one or more additional consumable components, and wherein updating the instructions comprises providing instructions to perform the supplemental electromechanical operations.
7 . The method of claim 2 , further comprising updating a graphical user interface based on the updated instructions.
8 . The method of claim 7 , wherein the updated graphical user interface provides instructions for manually modifying the consumable item.
9 . The method of claim 2 , wherein the one or more sensing devices comprises a vision system, a scale, an inertial sensor, a temperature sensor, a laser, a time-of-flight sensor, a humidity sensor, a pressure sensor, an airflow sensor, a force sensing probe, a viscosity sensor, a voltage, a current, a resistance, a digital machine output, a counter, a timer, an infrared sensor, or a radio frequency (RF) sensor.
10 . The method of claim 1 , further comprising:
monitoring, by one or more sensing devices, the processing of the consumable components by one or more of the electromechanical operations; and
identifying a preventative maintenance operation to be performed on one of the electromechanical components based on the monitoring.
11 . The method of claim 1 , further comprising:
identifying a set of available electromechanical operations, wherein one or more of the electromechanical operations allows customized operations to be performed on one or more of the consumable items;
identifying a set of available consumable components;
identifying, based on the set of available electromechanical operations, the customized operations, and the set of available consumable components, a plurality of consumable items that is available for preparation.
12 . The method of claim 11 , further comprising a set of available manual operations, wherein identifying the plurality of consumable items that is available for preparation is further based on the set of manual operations.
13 . The method of claim 12 , further comprising:
determining that one of the set of available electromechanical operations has become unavailable;
identifying one of the set of available manual operations as a substitute for the unavailable electromechanical operation; and
modifying the instructions to replace the unavailable electromechanical operation with the substitute manual operation.
14 . The method of claim 11 , further comprising:
determining that one of the set of available consumable components has become unavailable; and
modifying the plurality of consumable items that is available for preparation based on the unavailable consumable component.
15 . The method of claim 14 , wherein modifying the plurality of consumable items comprises identifying a substitute consumable component for the unavailable consumable component.
16 . The method of claim 1 , wherein the consumable item comprises a test consumable item, further comprising:
monitoring, by one or more sensing devices, the processing of the consumable components by the electromechanical operations;
determining a quality level of the consumable item; and
identifying, based on the monitoring and the quality level, one or more modifications to be made to one or more of the consumable items or one or more of the electromechanical operations.
17 . The method of claim 16 , further comprising repeating the monitoring and determining for a plurality of consumable items, wherein identifying the one or more modifications is based on the repeated monitoring and determining.
18 . The method of claim 1 , wherein generating the order data structure comprises accessing a primitive data store, wherein the primitive data store includes a plurality of consumable items, and wherein for each consumable item, an associated primitive data structure includes plurality of electromechanical operations primitives and a plurality of consumable components primitives.
19 . The method of claim 18 , wherein each electromechanical operation primitive is associated with at least one of the plurality of electromechanical components.
20 . The method of claim 19 , wherein one or more alternative electromechanical operations primitives are associated with one or more of the electromechanical operations primitives.
21 . The method of claim 20 , wherein one or more alternative manual operations primitives are associated with the one or more of the electromechanical operations primitives.
22 . The method of claim 21 , one or more alternative consumable component primitives are associated with one or more of the consumable component primitives.
23 . The method of claim 22 , further comprising automatically selecting a subset of the electromechanical operations primitives, alternative electromechanical primitives, alternative manual operations primitives, consumable components primitives, and alternative consumable components primitives.
24 . The method of claim 23 , wherein the automatic selection is based on monitoring of a plurality of consumable items.
25 . The method of claim 23 , wherein the automatic selection is based on receiving one or more inputs from a graphical user interface.
26 . The method of claim 1 , further comprising:
accessing a set of available electromechanical operations and a set of available consumable components;
providing a graphical user interface including a plurality of consumable items that are associated with the set of available electromechanical operations and the set of available consumable components; and
receiving a selection of the consumable item from the graphical user interface.
27 . The method of claim 26 , further comprising:
receiving a first selection of one of the plurality of consumable items;
providing a warning regarding the first selection; and
in response to providing the warning, receiving the selection of the consumable item, wherein the selected consumable item is different from the first selection.
28 . The method of claim 27 , wherein the warning is based on an assembly time for the first selection, a threshold availability of one of the consumable components, or a requirement of more than a threshold number of manual operations to prepare the first selection.
29 . The method of claim 28 , further comprising providing the consumable item on the graphical user interface as an alternative to the selected item, wherein the preparation of the alternative item would not require the warning.
30 . The method of claim 1 , wherein one or more of the plurality of electromechanical components comprises a temperature and time controlled oven operation, an automated cutting operation, an automated spreading operation, automated shredding operation, automated movement of a food preparation surface, automated and customized placement of ingredients, automated acquisition of a consumable component, an automated transfer operation, generation of augmented reality instructions, or an automated dispensing operation.
31 . The method of claim 30 , wherein the instructions comprise instructions for interfacing with the plurality of electromechanical components.
32 . The method of claim 31 , further comprising an application programming interface associated with each of the plurality of electromechanical components, wherein the application programming interface interprets between instructions of a restaurant management system and instructions of the electromechanical components.
33 . The method of claim 1 , wherein each of the plurality of electromechanical components comprises a modular cell, and wherein each modular cell is associated with one or more of the plurality of electromechanical operations.
34 . The method of claim 33 , wherein the instructions further comprise instructions to sequentially transfer the consumable item between modular cells during the preparation of the consumable item.
35 . The method of claim 34 , further comprising:
transferring the consumable item to a manual preparation table; and
providing a graphical user interface including steps for performing a portion of the preparation of the consumable item.
36 . The method of claim 1 , further comprising:
receiving, via the network, a second order for a second consumable item;
identifying, based on the second order, a second plurality of consumable components, wherein at least a portion of the second plurality of consumable components is the same as the consumable components of the first order;
identifying, based on the second plurality of consumable components and the second order, a second plurality of electromechanical operations to process one or more of the consumable components, wherein at least a portion of the second plurality of electromechanical operations is the same as the electromechanical operations of the first order;
generating a second order data structure of the second electromechanical operations and second consumable components;
providing second instructions, based on the second order data structure and the order data structure of the first order, to each of a plurality of electromechanical components to perform the second electromechanical operations, wherein the second electromechanical components automatically prepare the consumable item from the second consumable components in response to the second instructions, and wherein at least a portion of the preparation of the second consumable item is performed while the consumable item of the first order is being prepared.
37 . The method of claim 1 , further comprising:
receiving establishment-level data relating to the consumable components or the electromechanical operations; and
modifying one of the consumable components or the electromechanical operations based on the establishment-level data.
38 . The method of claim 37 , further comprising:
receiving enterprise-level data relating to the consumable components or the electromechanical operations; and
modifying one of the consumable components or the electromechanical operations based on the enterprise-level data.
39 . The method of claim 1 , further comprising:
monitoring the preparation of the consumable item; and
updating establishment-level data or enterprise-level data based on the monitoring.
40 . A restaurant operations system, comprising:
at least one communication interface;
a memory comprising instructions stored thereon; and
a processor coupled to the communication interface and the memory, wherein the processor is configured to execute the instructions to:
receive, via the at least one communication interface, an order for the consumable item;
identify, based on the order, a plurality of consumable components;
identify, based on the plurality of consumable components and the order, a plurality of electromechanical operations to process one or more of the consumable components;
generate an order data structure based on the electromechanical operations and consumable components; and
provide, via the at least on communication interface, instructions based on the order data structure to each of a plurality of electromechanical components to perform the electromechanical operations, wherein the electromechanical components automatically prepare the consumable item from the consumable components in response to the instructions.
41 . A non-transitory computer-readable medium having instructions stored thereon, that when executed by a processor of a restaurant operations system cause the processor to perform operations comprising:
receiving, via a network, an order for the consumable item;
identifying, based on the order, a plurality of consumable components;
identifying, based on the plurality of consumable components and the order, a plurality of electromechanical operations to process one or more of the consumable components;
generating an order data structure based on the electromechanical operations and consumable components; and
directing operations based on the order data structure for each of a plurality of electromechanical components to perform the electromechanical operations, wherein the electromechanical components automatically prepare the consumable item from the consumable components in response to the directed operations.