BACKGROUND

The present disclosure relates to apparatuses, systems, and methods for a cloud operating system for controlling clusters of remote devices.

Autonomous systems are a technical challenge to build, yet offer far reaching benefits such as cost efficiency and flexibility. In an autonomous system (e.g., a fully automated system), devices operate with limited or no human intervention. Without human intervention, such systems must be robustly designed and highly intelligent. One technical challenge with such systems is that deployments of different instances of such systems may be challenging to control such that results and outcomes are consistent across deployments. Additionally, automated systems may include complex subsystems for preforming highly specialized tasks that may need to be controlled individually and/or collectively with other subsystems to achieve desired results. Example applications of automated systems may include automated systems that are used to manufacture products. One particular example automated system enabled by embodiments disclosed herein is an automated food production system.

SUMMARY

In one embodiment, the present disclosure includes a cloud computer system for controlling a plurality of remote devices comprising a cloud server including a cloud based operating system comprising a data model stored in a computer memory. The data model includes commands that may be performed by a plurality of remote devices in a remote system and, for each remote device, one or more operations for triggering processes executed by the remote device. The cloud based operating system generates a set of instructions from the plurality of commands and corresponding operations to control a portion of the remote devices to perform a task.

A local server is coupled to a plurality of remote devices. The local server receives the instructions from the cloud server, and the local server distributes particular instructions to corresponding remote devices. The local server distributes the instructions based on particular operations in the instructions corresponding to particular remote devices. The local server manages the execution of instructions in the remote devices, wherein each remote device executes the particular instructions received from the local server, and wherein each remote device is configured to execute a plurality of predefined device specific processes in response to the particular instruction.

In one embodiment, the present disclosure includes a computer implemented method of controlling a plurality of remote devices from a cloud computer system comprising storing a data model in memory of the cloud computer system, the data model comprising commands to be performed by a plurality of remote devices in a remote system and, for each remote device, one or more operations for triggering processes executed by the remote device. A set of instructions is generated in the cloud computer system in response to a user input, the instructions being generated from the plurality of commands and corresponding operations to control a portion of a plurality remote devices to perform a task, and the instructions sent to a local server over a network. The local server is coupled to the plurality of remote devices, the local server receiving the instructions from the cloud server and distributing particular instructions to corresponding remote devices, wherein the local server distributes the instructions based on particular operations in the instructions corresponding to particular remote devices, and wherein the local server manages the execution of instructions in the remote devices. The remote devices receive the distributed instructions and execute the particular instructions received from the local server, wherein each remote device is configured to execute a plurality of predefined device specific processes in response to the particular instruction.

The above method may be stored on a non-transitory machine-readable medium as a program executable by at least one processing unit of a computer, the program comprising sets of instructions for performing the techniques described herein.

The following detailed description and accompanying drawings provide a better understanding of the nature and advantages of the present disclosure.

