Universal control architecture for control of unmanned systems
Abstract
A common command and control architecture (alternatively termed herein as a “universal control architecture”) is disclosed that allows different unmanned systems, including different types of unmanned systems (e.g., air, ground, and/or maritime unmanned systems), to be controlled simultaneously through a common control device (e.g., a controller that can be an input and/or output device). The universal control architecture brings significant efficiency gains in engineering, deployment, training, maintenance, and future upgrades of unmanned systems. In addition, the disclosed common command and control architecture breaks the traditional stovepipe development involving deployment models and thus reducing hardware and software maintenance, creating a streamlined training/proficiency initiative, reducing physical space requirements for transport, and creating a scalable, more connected interoperable approach to control of unmanned systems over existing unmanned systems technology.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A system for controlling vehicles, the system comprising:
one or more processors; and a non-transitory computer-readable storage medium storing instructions, which when executed by the one or more processors cause the one or more processors to:
receive, from a vehicle, movement types associated with the vehicle;
determine, based on the movement types, a plurality of movement control models for controlling the vehicle;
receive a command to control a plurality of vehicles;
determine, for the plurality of vehicles, a plurality of sets of multiple movement control models for controlling the plurality of vehicles, wherein each set of multiple movement control models is associated with a corresponding vehicle of the plurality of vehicles, and wherein each movement control model of the plurality of sets of the multiple movement control models translates commands into movement instructions for corresponding vehicles;
determine, for a first vehicle of the plurality of vehicles, a first movement control model of the plurality of movement control models for executing the command;
translate, using the first movement control model, the command into a set of movement instructions for the vehicle; and
transmit the set of movement instructions to the vehicle.
2 . The system of claim 1 , wherein the instructions for determining the first movement control model for executing the command, when executed by the one or more processors, further cause the one or more processors to:
determine that the command instructs the plurality of vehicles to move in a first direction; identify, for the first vehicle, the first movement control model; and input movement data into the first movement control model.
3 . The system of claim 1 , wherein the instructions for determining the first movement control model for executing the command, when executed by the one or more processors, further cause the one or more processors to:
determine that the command instructs the plurality of vehicles to track one or more objects located in a second direction; identify, based on a corresponding payload device of each vehicle, one or more vehicles having a tracking payload; and input the second direction into a corresponding tracking payload control model associated with each unmanned vehicle having the tracking payload.
4 . The system of claim 1 , wherein the instructions, when executed by the one or more processors, further cause the one or more processors to:
determine that the command requires an autonomous mode of operation for the first vehicle of the plurality of vehicles; and periodically, generate and transmit subsequent sets of movement instructions to the first vehicle.
5 . A method comprising:
receiving, from a vehicle, movement types associated with the vehicle; determining, based on the movement types, a plurality of movement control models that enable control of the vehicle, wherein each movement control model of the plurality of movement control models translates commands into movement instructions for the vehicle; receiving a command for the vehicle; determining, based on the command, one or more movement control models of the plurality of movement control models for executing the command; translating, using the one or more movement control models, the command into a set of movement instructions for the vehicle; and transmitting the set of movement instructions to the vehicle.
6 . The method of claim 5 , further comprising:
determining, for the vehicle, a communication protocol for communicating with the vehicle; and formatting the set of movement instructions according to the communication protocol.
7 . The method of claim 5 , wherein determining the one or more movement control models of the plurality of movement control models for executing the command comprises:
determining that the command instructs the vehicle to move in a first direction; identifying, for the vehicle, a first movement control model that enables movement of the vehicle; and inputting movement data into the first movement control model.
8 . The method of claim 5 , wherein determining the one or more movement control models of the plurality of movement control models for executing the command comprises:
determining that the command instructs the vehicle to track an object located in a second direction; determining, based on a payload device associated with the vehicle, that the vehicle includes a tracking payload; and inputting the second direction into a tracking payload control model.
9 . The method of claim 5 , further comprising:
determining that the command requires an autonomous mode of operation for the vehicle; and periodically, generating and transmitting subsequent sets of movement instructions to the vehicle.
10 . The method of claim 5 , wherein determining the plurality of movement control models for the vehicle comprises:
determining that the vehicle is an aerial vehicle having a rotating camera; and retrieving a flying movement control model, a hovering movement control model, gimbal movement control model, and a video control model.
11 . The method of claim 10 , wherein translating, using the one or more movement control models, the command into the set of movement instructions for the vehicle comprises:
determining that the command requires the aerial vehicle to hover at a particular location; inputting coordinates associated with the particular location into the hovering movement control model; receiving from the hovering movement control model a set of hovering instructions; and transmitting the set of hovering instructions to the aerial vehicle.
12 . The method of claim 10 , wherein translating, using the one or more movement control models, the command into the set of movement instructions for the vehicle comprises:
determining that the command requires the aerial vehicle to record a video stream of a particular location; inputting coordinates associated with the particular location into the gimbal movement control model; receiving from the gimbal movement control model a set of instructions for moving a camera into position; and transmitting, to the aerial vehicle, the set of instructions for moving the camera into the position.
13 . A non-transitory, computer-readable medium storing instructions, the instructions when executed by one or more processors, cause the one or more processors to perform operations comprising:
receiving a command for a vehicle; determining a plurality of movement control models for controlling the vehicle, wherein each movement control model of the plurality of movement control models translates commands into movement instructions for the vehicle; determining, based on the command, one or more movement control models of the plurality of movement control models for executing the command; translating, using the one or more movement control models, the command into a set of movement instructions for the vehicle; and transmitting the set of movement instructions to the vehicle.
14 . The non-transitory, computer-readable medium of claim 13 , wherein the instructions further cause the one or more processors to perform operations comprising:
determining, for the vehicle, a communication protocol for communicating with the vehicle; and formatting the set of movement instructions according to the communication protocol.
15 . The non-transitory, computer-readable medium of claim 13 , wherein the instructions for determining the one or more movement control models of the plurality of movement control models required to execute the command further cause the one or more processors to perform operations comprising:
determining that the command instructs the vehicle to move in a first direction; identifying, for the vehicle, a first movement control model that enables movement of the vehicle; and inputting movement data into the first movement control model.
16 . The non-transitory, computer-readable medium of claim 13 , wherein the instructions for determining the one or more movement control models of the plurality of movement control models required to execute the command further cause the one or more processors to perform operations comprising:
determining that the command instructs the vehicle to track an object located in a second direction; determining, based on a payload device associated with the vehicle, that the vehicle includes a tracking payload; and inputting the second direction into a tracking payload control model.
17 . The non-transitory, computer-readable medium of claim 13 , wherein the instructions further cause the one or more processors to perform operations comprising:
determining that the command requires an autonomous mode of operation for the vehicle; and periodically, generating and transmitting subsequent sets of movement instructions to the vehicle.
18 . The non-transitory, computer-readable medium of claim 13 , wherein the instructions for determining the plurality of movement control models for controlling the vehicle further cause the one or more processors to perform operations comprising:
determining that the vehicle is an aerial vehicle having a rotating camera; and retrieving a flying movement control model, a hovering movement control model, gimbal movement control model, and a video control model.
19 . The non-transitory, computer-readable medium of claim 18 , wherein the instructions for translating, using the one or more movement control models, the command into the set of movement instructions for the vehicle further cause the one or more processors to perform operations comprising:
determining that the command requires the aerial vehicle to hover at a particular location; inputting coordinates associated with the particular location into the hovering movement control model; receiving from the hovering movement control model a set of hovering instructions; and transmitting the set of hovering instructions to the aerial vehicle.
20 . The non-transitory, computer-readable medium of claim 18 , wherein the instructions for translating, using the one or more movement control models, the command into the set of movement instructions for the vehicle further cause the one or more processors to perform operations comprising:
determining that the command requires the aerial vehicle to record a video stream of a particular location; inputting coordinates associated with the particular location into the gimbal movement control model; receiving from the gimbal movement control model a set of instructions for moving a camera into position; and transmitting, to the aerial vehicle, the set of instructions for moving the camera into the position.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.