Patent Description:
Modern unmanned mobile sensor platforms, such as unmanned aerial vehicles (UAVs), remotely operated underwater vehicles (ROVs), unmanned (water) surface vehicles (USVs), and unmanned ground vehicles (UGVs) are able to operate over long distances and in all environments; rural, urban, and even underwater. In particular, UAVs have a wide range of real-world applications including surveillance, reconnaissance, exploration, item transportation, disaster relief, aerial photography, large-scale agriculture monitoring, etc. A UAV may generally be equipped with various devices such as sensors and navigation technologies to complete a broad variety of operations in the real-world applications. However, oftentimes such sensors and navigation technologies may not be sufficient for the UAV to complete such operations. <CIT> discloses an aerial and ground robotic system including a number of mobile nodes creating a mesh network, including at least one aerial node. A sensor is provided on the at least one aerial node. A base station receives data from the sensor through the mesh network. <CIT> discloses a communication link coverage mapping system including a logic device configured to communicate with a communication module and a position sensor coupled to a mobile platform, where the communication module is configured to establish a wireless communication link with a base station associated with the mobile platform and the position sensor is configured to provide a position of the mobile platform as it maneuvers within a survey area. The logic device determines communication link quality data associated with the wireless communication link as the mobile platform maneuvers within the survey area, receives corresponding position data, and generates corresponding communication coverage information, which may be used to generate a radio link coverage map. There remains a need in the art to improve a UAV's ability to complete operations by utilizing the capability of a mesh network to exchange information between neighboring nodes.

Various systems and methods related to operating a mobile platform using mesh networks are disclosed. According to a first aspect, there is provided a control station according to claim <NUM>.

According to a second aspect, there is provided a mobile platform according to claim <NUM>.

It is noted that sizes of various components and distances between these components are not drawn to scale in the figures. response to the position information (e.g., a control signal generated and provided by the navigator module based on the position information).

The scope of the invention is defined by the claims, which are incorporated into this section by reference. A more complete understanding of further embodiments of the present invention will be afforded to those skilled in the art, as well as a realization of additional advantages thereof, by a consideration of the following detailed description of one or more embodiments. Reference will be made to the appended sheets of drawings that will first be described briefly.

It is noted that sizes of various components and distances between these components are not drawn to scale in the figures.

Mobile platforms (e.g., UAVs, ROVs, USVs, and UGVs) participate in a number of different types of missions. In some missions, a mobile platform may be required to engage with a moving target (e.g., a radio device, radio marker). For example, in a mission, a user (e.g., a human piloting the UAV from a remote location using a control station) may want to have the mobile platform follow the target at a fixed distance (e.g., an offset distance). As another example, in a mission, the user may want to have several mobile platforms controllable from the control station follow different targets. In another example, in a mission, the user may want to have several vehicles follow a single target or have the several vehicles follow each other in a daisy chain manner. The present disclosure provides systems, devices, and methods to facilitate operation of a mobile platform to complete the aforementioned missions as well as complete additional tasks that will be apparent in view of the disclosure. For example, by implementing embodiments of the present disclosure, position information corresponding to targets, which may be nodes participating in a mesh network, can be ingested and displayed in a user interface of a control station such that the user can track the positions of the nodes and command the mobile platform to interact with the nodes as desired.

In some embodiments, a mesh network may be a group of devices arranged in a single network so that there are multiple sources to route and retrieve information among the devices. The devices may be referred to as nodes in certain embodiments. In some cases, a node may be a mobile platform, a vehicle (e.g., an autonomous, semi-autonomous, or traditional vehicle), a base station (e.g., a set home location for a mobile platform), a radio device held by a human or structure, a control station, and so forth. The nodes may communicate with each other in various ways. For example, a Cursor-on-Target protocol may be used as a communication standard to share information amongst the nodes in some embodiments. The Cursor-on-Target protocol may allow nodes to send and receive information that identifies the sending node, a position of the sending node, and when the position was determined by the sending node (e.g., using telemetry of the sending node). In one case, position information may include GPS coordinate position information determined by the sending node.

Some embodiments of the disclosure provide a control station. The control station may have a user interface that displays nodes participating in a mesh network. The control station may provide the positions of the nodes using position information broadcasted from the nodes and received by the control station. A user may select a node in the user interface and enter a command to have a mobile platform interact with the selected node. The control station may send the command to the mobile platform and cause the mobile platform to operate in accordance with the command.

The mobile platform may operate in accordance with the command received from the control station. For example, a navigator module of the mobile platform may receive, from the control station and by a communication system of the mobile platform, the command identifying a selected node from the plurality of nodes of the mesh network. In response to the command, the navigator module may subscribe to position information corresponding to the selected node. A telemetry module of the mobile platform may establish a wireless connection between the communication system of the mobile platform and the selected node in response to the command and the subscription by the navigator module. The wireless connection may allow the mobile platform to act autonomously in accordance with the command even in an event where the control station and the mobile platform disconnect. Further, the wireless connection may reduce signal latency since telemetry information from the selected node can be received directly rather than through the control station.

The position information corresponding to the selected node may be received from the selected node by the communication system, via the wireless connection, and provided to the navigator module by the telemetry module. The navigator module may then provide a control signal to a controller of the mobile platform to operate one or more elements of the mobile platform (e.g., a propulsion system and/or an imaging system) in response to the position information and in accordance with the command from the control station (e.g., a control signal generated and provided by the navigator module based on the position information). The control signal may be continuously adjusted as needed based on updates received related to the position of the selected node.

In some embodiments, the command may be a navigation command instructing the mobile platform to follow the selected node, by an offset distance, using position information corresponding to the selected node. In various embodiments, the command may be an image tracking command instructing the mobile platform to capture image frames of the selected node. The position information received by the mobile platform from the selected node can be used by the mobile platform to adjust a position/orientation of the mobile platform and/or an imaging system of the mobile platform so that the image frames of the selected node can be captured. In a further embodiment, the command may be a landing command instructing the mobile platform to land at a landing location associated with the selected node.

In some cases, more than one command can be sent to the mobile platform as a command package and the mobile platform may complete the commands in a sequence delineated in the command package. In some cases, one or more commands in the command package may be completed simultaneously. For example, the mobile platform may be commanded to complete one or more of the following simultaneously: follow a first node, image track a second node, and land at a landing location associated with a third node.

Furthermore, in some embodiments, commands can be dynamically swapped. For example, a first command may be sent to the mobile platform to have the mobile platform follow a first node such as a second mobile platform. A second command may then be sent to the mobile platform to have the mobile platform switch to following a second node such as a third mobile platform.

Now referring to <FIG>, illustrated is a block diagram of a survey system <NUM> including a mobile platform <NUM> and a control station <NUM>, in accordance with an embodiment of the disclosure. In various embodiments, mobile platform <NUM> may be configured to fly over a scene or survey area, to fly through a structure, or to approach a target and image or sense the scene, structure, or target, or portions thereof, using gimbal system <NUM> to aim imaging system/sensor payload <NUM> at the scene, structure, or target, or portions thereof, for example. Resulting imagery and/or other sensor data may be processed (e.g., by logic circuit <NUM>, logic circuit <NUM>, and/or logic circuit <NUM>) and displayed to a user through use of user interface <NUM> (e.g., one or more displays such as a multifunction display (MFD), a portable electronic device such as a tablet, laptop, or smart phone, or other appropriate interface) and/or stored in memory for later viewing and/or analysis. In some embodiments, system <NUM> may be configured to use such imagery and/or sensor data to control operation of mobile platform <NUM> and/or imaging system <NUM>, such as controlling gimbal system <NUM> to aim imaging system140 towards a particular direction, or controlling propulsion system <NUM> to move mobile platform <NUM> to a desired position in a scene or structure or relative to a target.

In the embodiment shown in <FIG>, survey system <NUM> includes mobile platform <NUM>, control station <NUM>, and at least one imaging system <NUM>. Mobile platform <NUM> may be implemented as a mobile platform configured to move or fly and position and/or aim imaging system <NUM> (e.g., relative to a selected, designated, or detected target). As shown in <FIG>, mobile platform <NUM> may include one or more of a controller <NUM>, an orientation sensor <NUM>, a gyroscope/ accelerometer <NUM>, a global navigation satellite system (GNSS) <NUM>, a communications module <NUM>, a gimbal system <NUM>, a propulsion system <NUM>, and other modules <NUM>. Operation of mobile platform <NUM> may be substantially autonomous and/or partially or completely controlled by control station <NUM>, which may include one or more of a user interface <NUM>, a communication system <NUM>, a logic circuit <NUM> and other modules <NUM>. In other embodiments, mobile platform <NUM> may include one or more of the elements of control station <NUM>, such as with various types of manned aircraft, terrestrial vehicles, and/or surface or subsurface watercraft. Imaging system <NUM> may be physically coupled to mobile platform <NUM> and be configured to capture sensor data (e.g., visible spectrum images, infrared images, narrow aperture radar data, and/or other sensor data) of a target position, area, and/or object(s) as selected and/or framed by operation of mobile platform <NUM> and/or control station <NUM>. In various embodiments, the imaging system <NUM> may be oriented to capture a node participating in a mesh network based on position information received by the mobile platform <NUM> from the node. In some embodiments, one or more of the elements of system <NUM> may be implemented in a combined housing or structure that can be coupled to or within mobile platform <NUM> and/or held or carried by a user of system <NUM>.

Logic circuit <NUM> may be implemented as any appropriate logic device (e.g., processing device, microcontroller, processor, application specific integrated circuit (ASIC), field programmable gate array (FPGA), memory storage device, memory reader, or other device or combinations of devices) that may be adapted to execute, store, and/or receive appropriate instructions, such as software instructions implementing a control loop for controlling various operations of mobile platform <NUM> and/or other elements of system <NUM>, such as the gimbal system <NUM>, imaging system <NUM>, or the propulsion system <NUM>, for example. Such software instructions may also implement methods for processing infrared images and/or other sensor signals, determining sensor information, providing user feedback (e.g., through user interface <NUM>), querying devices for operational parameters, selecting operational parameters for devices, or performing any of the various operations described herein (e.g., operations performed by logic devices of various elements of system <NUM>).

In addition, a non-transitory medium may be provided for storing machine readable instructions for loading into and execution by logic circuit <NUM>. In these and other embodiments, logic circuit <NUM> may be implemented with other components where appropriate, such as volatile memory, non-volatile memory, one or more interfaces, and/or various analog and/or digital components for interfacing with devices of system <NUM>. For example, logic circuit <NUM> may be adapted to store sensor signals, sensor information, parameters for coordinate frame transformations, calibration parameters, sets of calibration points, and/or other operational parameters, over time, for example, and provide such stored data to a user using user interface <NUM>. In some embodiments, logic circuit <NUM> may be integrated with one or more other elements of mobile platform <NUM> such as controller <NUM>, navigator module <NUM>, and/or telemetry module <NUM>, for example. In some embodiments, the logic circuit <NUM> may be distributed as multiple logic devices within mobile platform <NUM>, control station <NUM> (e.g., logic circuit <NUM>), and/or imaging system <NUM> (e.g., logic circuit <NUM>).

In some embodiments, logic circuit <NUM> may be configured to substantially continuously monitor and/or store the status of and/or sensor data provided by one or more elements of mobile platform <NUM>, imaging system <NUM>, and/or control station <NUM>, such as the position and/or orientation of mobile platform <NUM>, imaging system <NUM>, and/or control station <NUM>, for example. As another example, the logic circuit <NUM> may be configured continuously monitor and/or store the status of data provided by navigator module <NUM> and/or telemetry module <NUM>. It will be appreciated that logic circuits <NUM> and <NUM> may be implemented with hardware and/or software components similar to logic circuit <NUM>.

Orientation sensor <NUM> may be implemented as one or more of a compass, float, accelerometer, and/or other device capable of measuring an orientation of mobile platform <NUM> (e.g., magnitude and direction of roll, pitch, and/or yaw, relative to one or more reference orientations such as gravity and/or Magnetic North), gimbal system <NUM>, imaging system <NUM>, and/or other elements of system <NUM>, and providing such measurements as sensor signals and/or data that may be communicated to various devices of system <NUM>. Gyroscope/accelerometer <NUM> may be implemented as one or more electronic sextants, semiconductor devices, integrated chips, accelerometer sensors, accelerometer sensor systems, or other devices capable of measuring angular velocities/accelerations and/or linear accelerations (e.g., direction and magnitude) of mobile platform <NUM> and/or other elements of system <NUM> and providing such measurements as sensor signals and/or data that may be communicated to other devices of system <NUM> (e.g., user interface <NUM>, logic circuit <NUM>). GNSS <NUM> may be implemented according to any global navigation satellite system, including a GPS, GLONASS, and/or Galileo based receiver and/or other device capable of determining absolute and/or relative position of mobile platform <NUM> (e.g., or an element of mobile platform <NUM>) based on wireless signals received from space-born and/or terrestrial sources (e.g., eLoran, and/or other at least partially terrestrial systems), for example, and capable of providing such measurements as sensor signals and/or data (e.g., coordinates) that may be communicated to various devices of system <NUM> and other nodes participating in a mesh network. In some embodiments, GNSS <NUM> may include an altimeter, for example, or may be used to provide an absolute altitude.

Communication system <NUM> may be implemented as any wired and/or wireless communications system configured to transmit and receive analog and/or digital signals between elements of system <NUM> and other nodes participating in a mesh network. For example, communication system <NUM> may be configured to receive flight control signals and/or data (e.g., commands to interact with selected nodes in the mesh network) from control station <NUM> and provide them to navigator module <NUM>, logic circuit <NUM>, and/or propulsion system <NUM>. In other embodiments, communication system <NUM> may be configured to receive images and/or other sensor information (e.g., visible spectrum and/or infrared still images or video images) from imaging system <NUM> and relay the sensor data to logic circuit <NUM> and/or control station <NUM>. In some embodiments, communication system <NUM> may be configured to support spread spectrum transmissions, for example, and/or multiple simultaneous communications channels between elements of system <NUM>. Wireless communication links may include one or more analog and/or digital radio communication links, such as WiFi and others, as described herein, and may be direct communication links established between elements of system <NUM>, for example, or may be relayed through one or more wireless relay stations configured to receive and retransmit wireless communications. Communication links established by communication system <NUM> may be configured to transmit data between elements of system <NUM> substantially continuously throughout operation of system <NUM>, where such data includes various types of sensor data, control parameters, and/or other data, as described herein. In some embodiments, telemetry module <NUM> may interface with the communication system <NUM> to establish a wireless connection/communication link with one or more nodes selected from a plurality of nodes participating in a mesh network. The selected nodes may transmit telemetry data (e.g., position information) to the telemetry module <NUM> via the established wireless connection and the communication system <NUM>. In various embodiments, navigator module <NUM> may interface with the communication system <NUM> to communicate with the control station <NUM>. For example, the navigator module <NUM> may receive, from the control station via the communication system <NUM>, commands and node selections, which may be used to operate the mobile platform <NUM> to interact with the selected nodes in accordance with the commands.

Gimbal system <NUM> may be implemented as an actuated gimbal mount, for example, that may be controlled by controller <NUM> and/or logic circuit <NUM> to stabilize imaging system <NUM> relative to a target or to aim imaging system <NUM> according to a desired direction and/or relative orientation or position. For example, controller <NUM> may receive a control signal from one or more components of system <NUM> to cause gimbal system <NUM> to adjust a position of imaging system <NUM> as described in the disclosure. As such, gimbal system <NUM> may be configured to provide a relative orientation of imaging system <NUM> (e.g., relative to an orientation of mobile platform <NUM>) to controller <NUM>, logic circuit <NUM>, and/or communication system <NUM> (e.g., gimbal system <NUM> may include its own orientation sensor <NUM>). In other embodiments, gimbal system <NUM> may be implemented as a gravity driven mount (e.g., non-actuated). In various embodiments, gimbal system <NUM> may be configured to provide power, support wired communications, and/or otherwise facilitate operation of articulated sensor/imaging system <NUM>. In further embodiments, gimbal system <NUM> may be configured to couple to a laser pointer, range finder, and/or other device, for example, to support, stabilize, power, and/or aim multiple devices (e.g., imaging system <NUM> and one or more other devices) substantially simultaneously.

In some embodiments, gimbal system <NUM> may be adapted to rotate imaging system <NUM> +-<NUM> degrees, or up to <NUM> degrees, in a vertical plane relative to an orientation and/or position of mobile platform <NUM>. In further embodiments, gimbal system <NUM> may rotate imaging system <NUM> to be parallel to a longitudinal axis or a lateral axis of mobile platform <NUM> as mobile platform <NUM> yaws, which may provide <NUM> degree ranging and/or imaging in a horizontal plane relative to mobile platform <NUM>. In various embodiments, logic circuit <NUM> may be configured to monitor an orientation of gimbal system <NUM> and/or imaging system <NUM> relative to mobile platform <NUM>, for example, or an absolute or relative orientation of an element of imaging system <NUM> (e.g., SER <NUM>). Such orientation data may be transmitted to other elements of system <NUM> for monitoring, storage, or further processing, as described herein.

Propulsion system <NUM> may be implemented as one or more propellers, turbines, or other thrust-based propulsion systems, and/or other types of propulsion systems that can be used to provide motive force and/or lift to mobile platform <NUM> and/or to steer mobile platform <NUM>. In some embodiments, propulsion system <NUM> may include multiple propellers (e.g., a tri, quad, hex, oct, or other type "copter") that can be controlled (e.g., by controller <NUM>) to provide lift and motion for mobile platform <NUM> and to provide an orientation for mobile platform <NUM>. In other embodiments, propulsion system <NUM> may be configured primarily to provide thrust while other structures of mobile platform <NUM> provide lift, such as in a fixed wing embodiment (e.g., where wings provide the lift) and/or an aerostat embodiment (e.g., balloons, airships, hybrid aerostats). In various embodiments, propulsion system <NUM> may be implemented with a portable power supply, such as a battery and/or a combustion engine/generator and fuel supply.

Controller <NUM> may be implemented as any appropriate logic device (e.g., processing device, microcontroller, processor, application specific integrated circuit (ASIC), field programmable gate array (FPGA), memory storage device, memory reader, or other device or combinations of devices) that may be adapted to execute, store, and/or receive appropriate instructions (e.g., control signals), such as software instructions implementing a control loop for controlling various operations of mobile platform <NUM> and/or other elements of system <NUM>, such as gimbal system <NUM>, imaging system <NUM>, and propulsion system <NUM>. For example, the controller <NUM> may receive a control signal from navigator module <NUM> to operate the propulsion system <NUM> in accordance with commands received from the control station <NUM>. The control signal may be generated by the navigator module <NUM> based on position information corresponding to a node and received by the mobile platform <NUM> from the node (e.g., via the communication system <NUM>). The control signal may be generated in accordance with a command received from the control station <NUM> to interact with the node (e.g., follow the node, track the node with the imaging system, and/or land at a designated location in proximity to the node) and may be adjusted based on position information received from the node by the telemetry module <NUM> and provided to the navigator module <NUM>. In some embodiments, the controller <NUM>, the navigator module <NUM>, and/or the telemetry module <NUM> may be components of the logic circuit <NUM>.

Other modules <NUM> may include other and/or additional sensors, actuators, communications modules/nodes, and/or user interface devices, for example, and may be used to provide additional environmental information related to operation of mobile platform <NUM>, for example. In some embodiments, other modules <NUM> may include a humidity sensor, a wind and/or water temperature sensor, a barometer, an altimeter, a radar system, a proximity sensor, a visible spectrum camera or infrared camera (with an additional mount), an irradiance detector, and/or other environmental sensors providing measurements and/or other sensor signals that can be displayed to a user and/or used by other devices of system <NUM> (e.g., controller <NUM>) to provide operational control of mobile platform <NUM> and/or system <NUM>.

In some embodiments, other modules <NUM> may include one or more actuated and/or articulated devices (e.g., multi-spectrum active illuminators, visible and/or IR cameras, radars, sonars, and/or other actuated devices) coupled to mobile platform <NUM>, where each actuated device includes one or more actuators adapted to adjust an orientation of the device, relative to mobile platform <NUM>, in response to one or more control signals (e.g., provided by controller <NUM> or logic circuit <NUM>). In particular, other modules <NUM> may include a stereo vision system configured to provide image data that may be used to calculate or estimate a position of mobile platform <NUM>, for example, or to calculate or estimate a relative position of a navigational hazard in proximity to mobile platform <NUM>. In various embodiments, controller <NUM> may be configured to use such proximity and/or position information to help safely pilot mobile platform <NUM> and/or monitor communication link quality with the control station <NUM> or other nodes in the mesh network.

User interface <NUM> of control station <NUM> may be implemented as one or more of a display, a touch screen, a keyboard, a mouse, a joystick, a knob, a steering wheel, a yoke, and/or any other device capable of accepting user input and/or providing feedback to a user. In various embodiments, user interface <NUM> may be adapted to provide user input (e.g., as a type of signal and/or sensor information transmitted by communication system <NUM> of control station <NUM>) to other devices of system <NUM>, such as logic circuit <NUM>. User interface <NUM> may also be implemented with one or more logic devices (e.g., similar to logic circuit <NUM>) that may be adapted to store and/or execute instructions, such as software instructions, implementing any of the various processes and/or methods described herein. For example, user interface <NUM> may be adapted to form communication links, transmit and/or receive communications (e.g., infrared images and/or other sensor signals, control signals, sensor information, user input, and/or other information), for example, or to perform various other processes and/or methods described herein.

In one embodiment, user interface <NUM> may be adapted to display a time series of various sensor information and/or other parameters as part of or overlaid on a graph or map, which may be referenced to a position and/or orientation of mobile platform <NUM> and/or other nodes participating in a mesh network. For example, user interface <NUM> may be adapted to display a time series of positions, headings, and/or orientations of mobile platform <NUM> and/or other nodes overlaid on a geographical map, which may include one or more graphs indicating a corresponding time series of actuator control signals, sensor information, and/or other sensor and/or control signals.

In some embodiments, user interface <NUM> may be adapted to accept user input including a user-defined target heading, waypoint, route, and/or orientation for an element of system <NUM>, for example, and to generate control signals to cause mobile platform <NUM> to move according to the target heading, route, and/or orientation, or to aim imaging system <NUM> accordingly. In other embodiments, user interface <NUM> may be adapted to accept user input modifying a control loop parameter of logic circuit <NUM>, for example. In further embodiments, user interface <NUM> may be adapted to accept user input including a user-defined target attitude, orientation, and/or position for an actuated or articulated device (e.g., imaging system <NUM>) associated with mobile platform <NUM>, for example, and to generate control signals for adjusting an orientation and/or position of the actuated device according to the target altitude, orientation, and/or position. Such control signals may be transmitted to logic circuit <NUM> (e.g., using communication system <NUM> and <NUM>), which may then control mobile platform <NUM> accordingly.

Communication system <NUM> may be implemented as any wired and/or wireless communications system configured to transmit and receive analog and/or digital signals between elements of system <NUM> and/or nodes participating in a mesh network. For example, communication system <NUM> may be configured to transmit flight control signals or commands from user interface <NUM> to communications systems <NUM> or <NUM>. In other embodiments, communication system <NUM> may be configured to receive sensor data (e.g., visible spectrum and/or infrared still images or video images, or other sensor data) from imaging system <NUM>. In some embodiments, communication system <NUM> may be configured to support spread spectrum transmissions, for example, and/or multiple simultaneous communications channels between elements of system <NUM>. In various embodiments, communication system <NUM> may be configured to monitor the status of a communication link established between control station <NUM>, imaging system <NUM>, mobile platform <NUM>, and/or the nodes participating in the mesh network (e.g., including packet loss of transmitted and received data between elements of system <NUM> or the nodes of the mesh network, such as with digital communication links). Such status information may be provided to user interface <NUM>, for example, or transmitted to other elements of system <NUM> for monitoring, storage, or further processing, as described herein.

Logic circuit <NUM> may be implemented as any appropriate logic device (e.g., processing device, microcontroller, processor, application specific integrated circuit (ASIC), field programmable gate array (FPGA), memory storage device, memory reader, or other device or combinations of devices) that may be adapted to execute, store, and/or receive appropriate instructions, such as software instructions implementing a control loop for controlling various operations of control station <NUM>. Such software instructions may also implement methods for processing infrared images and/or other sensor signals, determining sensor information, providing user feedback (e.g., through user interface <NUM>), querying devices for operational parameters, selecting operational parameters for devices, or performing any of the various operations described herein (e.g., operations performed by logic devices of various elements of system <NUM>).

Other modules <NUM> of control station <NUM> may include other and/or additional sensors, actuators, communications modules/nodes, and/or user interface devices used to provide additional environmental information associated with control station <NUM>, for example. In some embodiments, other modules <NUM> may include a humidity sensor, a wind and/or water temperature sensor, a barometer, a radar system, a visible spectrum camera, an infrared camera, a GNSS, and/or other environmental sensors providing measurements and/or other sensor signals that can be displayed to a user and/or used by other devices of system <NUM> (e.g., logic circuit <NUM>) to provide operational control of mobile platform <NUM> and/or system <NUM> or to process sensor data to compensate for environmental conditions, such as an water content in the atmosphere approximately at the same altitude and/or within the same area as mobile platform <NUM> and/or control station <NUM>, for example. In some embodiments, other modules <NUM> may include one or more actuated and/or articulated devices (e.g., multi-spectrum active illuminators, visible and/or IR cameras, radars, sonars, and/or other actuated devices), where each actuated device includes one or more actuators adapted to adjust an orientation of the device in response to one or more control signals (e.g., provided by user interface <NUM>).

Logic circuit <NUM> may be implemented as any appropriate logic device (e.g., processing device, microcontroller, processor, application specific integrated circuit (ASIC), field programmable gate array (FPGA), memory storage device, memory reader, or other device or combinations of devices) that may be adapted to execute, store, and/or receive appropriate instructions, such as software instructions implementing a control loop for controlling various operations of imaging system <NUM>. Such software instructions may also implement methods for processing infrared images and/or other sensor signals, determining sensor information, providing user feedback (e.g., through user interface <NUM>), querying devices for operational parameters, selecting operational parameters for devices, or performing any of the various operations described herein (e.g., operations performed by logic devices of various elements of system <NUM>).

In embodiments where imaging system <NUM> is implemented as an imaging device, imaging system <NUM> may include imaging module <NUM>, which may be implemented as a cooled and/or uncooled array of detector elements, such as visible spectrum and/or infrared sensitive detector elements, including quantum well infrared photodetector elements, bolometer or microbolometer based detector elements, type II superlattice based detector elements, and/or other infrared spectrum detector elements that can be arranged in a focal plane array. In various embodiments, imaging module <NUM> may include one or more logic devices (e.g., similar to logic circuit <NUM>) that can be configured to process imagery captured by detector elements of imaging module <NUM> before providing the imagery to memory <NUM> or communications module <NUM>. More generally, imaging module <NUM> may be configured to perform any of the operations or methods described herein, at least in part, or in combination with logic circuit <NUM> and/or user interface <NUM>. In some embodiments, the imaging module <NUM> may be a component of the logic circuit <NUM>.

In some embodiments, imaging system <NUM> may be implemented with a second or additional imaging modules similar to imaging module <NUM>, for example, that may include detector elements configured to detect other electromagnetic spectrums, such as visible light, ultraviolet, and/or other electromagnetic spectrums or subsets of such spectrums. In various embodiments, such additional imaging modules may be calibrated or registered to imaging module <NUM> such that images captured by each imaging module occupy a known and at least partially overlapping field of view of the other imaging modules, thereby allowing different spectrum images to be geometrically registered to each other (e.g., by scaling and/or positioning). In some embodiments, different spectrum images may be registered to each other using pattern recognition processing in addition or as an alternative to reliance on a known overlapping field of view.

Communication system <NUM> of imaging system <NUM> may be implemented as any wired and/or wireless communications module configured to transmit and receive analog and/or digital signals between elements of system <NUM>. For example, communication system <NUM> may be configured to transmit infrared images from imaging module <NUM> to communications systems <NUM> or <NUM>. In other embodiments, communication system <NUM> may be configured to receive control signals (e.g., control signals directing capture, focus, selective filtering, and/or other operation of imaging system <NUM>) from logic circuit <NUM> and/or user interface <NUM>. In some embodiments, communication system <NUM> may be configured to support spread spectrum transmissions, for example, and/or multiple simultaneous communications channels between elements of system <NUM>. In various embodiments, communication system <NUM> may be configured to monitor and communicate the status of an orientation of the imaging system <NUM>. Such status information may be used, for example, to adjust the orientation of the imaging system <NUM> to capture images of a node in a mesh network.

Memory <NUM> may be implemented as one or more machine readable mediums and/or logic devices configured to store software instructions, sensor signals, control signals, operational parameters, calibration parameters, infrared images, and/or other data facilitating operation of system <NUM>, for example, and provide it to various elements of system <NUM>. Memory <NUM> may also be implemented, at least in part, as removable memory, such as a secure digital memory card for example including an interface for such memory.

Orientation sensor <NUM> of imaging system <NUM> may be implemented similar to orientation sensor <NUM> or gyroscope/ accelerometer <NUM>, and/or any other device capable of measuring an orientation of imaging system <NUM>, imaging module <NUM>, and/or other elements of imaging system <NUM> (e.g., magnitude and direction of roll, pitch, and/or yaw, relative to one or more reference orientations such as gravity, Magnetic North, and/or an orientation of mobile platform <NUM>) and providing such measurements as sensor signals that may be communicated to various devices of system <NUM>. Gyroscope/accelerometer (e.g., angular motion sensor) <NUM> of imaging system <NUM> may be implemented as one or more electronic sextants, semiconductor devices, integrated chips, accelerometer sensors, accelerometer sensor systems, or other devices capable of measuring angular velocities/accelerations (e.g., angular motion) and/or linear accelerations (e.g., direction and magnitude) of imaging system <NUM> and/or various elements of imaging system <NUM> and providing such measurements as sensor signals that may be communicated to various devices of system <NUM>.

Other modules <NUM> of imaging system <NUM> may include other and/or additional sensors, actuators, communications modules/nodes, cooled or uncooled optical filters, and/or user interface devices used to provide additional environmental information associated with imaging system <NUM>, for example. In some embodiments, other modules <NUM> may include a humidity sensor, a wind and/or water temperature sensor, a barometer, a radar system, a visible spectrum camera, an infrared camera, a GNSS, and/or other environmental sensors providing measurements and/or other sensor signals that can be displayed to a user and/or used by imaging module <NUM> or other devices of system <NUM> (e.g., logic circuit <NUM> or controller <NUM>) to provide operational control of mobile platform <NUM> and/or system <NUM> or to process imagery to compensate for environmental conditions.

In general, each of the elements of system <NUM> may be implemented with any appropriate logic device (e.g., processing device, microcontroller, processor, application specific integrated circuit (ASIC), field programmable gate array (FPGA), memory storage device, memory reader, or other device or combinations of devices) that may be adapted to execute, store, and/or receive appropriate instructions, such as software instructions implementing a method for providing sensor data and/or imagery, for example, or for transmitting and/or receiving communications, such as sensor signals, sensor information, and/or control signals, between one or more devices of system <NUM>. In addition, one or more non-transitory mediums may be provided for storing machine readable instructions for loading into and execution by any logic device implemented with one or more of the devices of system <NUM>. In these and other embodiments, the logic devices may be implemented with other components where appropriate, such as volatile memory, non-volatile memory, and/or one or more interfaces (e.g., inter-integrated circuit (I2C) interfaces, mobile industry processor interfaces (MIPI), joint test action group (JTAG) interfaces (e.g., IEEE <NUM> standard test access port and boundary-scan architecture), and/or other interfaces, such as an interface for one or more antennas, or an interface for a particular type of sensor). According to some embodiments, one or more devices of the system <NUM> may be implemented in logic circuit <NUM>. For example, controller <NUM>, telemetry module <NUM>, navigator module <NUM>, communication system <NUM>, and/or other devices of system <NUM> may be implemented in logic circuit <NUM>.

Sensor signals, control signals, and other signals may be communicated among elements of system <NUM> using a variety of wired and/or wireless communication techniques, including voltage signaling, Ethernet, WiFi, Bluetooth, Zigbee, Xbee, Micronet, Cursor-on-Target (CoT) or other medium and/or short range wired and/or wireless networking protocols and/or implementations, for example. In such embodiments, each element of system <NUM> may include one or more modules supporting wired, wireless, and/or a combination of wired and wireless communication techniques. In some embodiments, various elements or portions of elements of system <NUM> may be integrated with each other, for example, or may be integrated onto a single printed circuit board (PCB) to reduce system complexity, manufacturing costs, power requirements, coordinate frame errors, and/or timing errors between the various sensor measurements. Each element of system <NUM> may include one or more batteries, capacitors, or other electrical power storage devices, for example, and may include one or more solar cell modules or other electrical power generating devices. In some embodiments, one or more of the devices may be powered by a power source for mobile platform <NUM>, using one or more power leads. Such power leads may also be used to support one or more communication techniques between elements of system <NUM>.

<FIG> illustrates a diagram of survey system <NUM> including mobile platforms 110A and 110B, each with imaging systems <NUM> and associated gimbal systems <NUM> in accordance with an embodiment of the disclosure. In the embodiment shown in <FIG>, survey system <NUM> includes control station <NUM>, mobile platform 110A with articulated imaging system <NUM> and gimbal system <NUM>, and mobile platform 110B with articulated imaging system <NUM> and gimbal system <NUM>, where control station <NUM> may be configured to control motion, position, and/or orientation of mobile platform 110A, mobile platform 110B, and/or imaging systems <NUM>. More generally, survey system <NUM> may include any number of mobile platforms <NUM>, 110A, and/or 110B. In some embodiments, control station <NUM> and mobile platforms <NUM>, 110A, and/or 110B may be nodes participating in a mesh network, in some cases along with additional nodes of the mesh network. The nodes of the mesh network may exchange information about their respective positions with neighboring nodes. In some embodiments, the nodes may exchange information about their respective positions with neighboring nodes in accordance with a Cursor-on-Target (CoT) communication protocol. In further embodiments, the position information shared between nodes may include GPS coordinate positions for the respective nodes.

<FIG> illustrates a mesh network <NUM> in accordance with one or more embodiments of the disclosure. The mesh network <NUM> may have a plurality of participating nodes. For example, node 302a, node 302b, node 302c, mobile platform <NUM>, and/or control station <NUM> may be participating in the mesh network <NUM>. Nodes 302a-c may include various devices (e.g., similar to communication system <NUM>) configured transmit signals to and from other nodes in the mesh network including the control station <NUM>. As an example, nodes 302a-c may be radio devices, mobile platforms, vehicles, base stations, and/or mobile devices.

In the mesh network <NUM>, node 302a, 302b, node 302c, and mobile platform <NUM> may broadcast position information, which may be received by control station <NUM> (e.g., via communication system <NUM>). As shown in <FIG>, position information 306a may be sent from node 302a to control station <NUM>, position information 306b may be sent from node 302b to control station <NUM>, and position information 306c may be send from node 302c to control station <NUM>. In some embodiments, the position information may be relayed to control station <NUM> using a flooding technique in which every incoming data packet at a node containing position information is sent through every outgoing link of the node except the one that it arrived on. In other embodiments, the position information may be propagated using a routing technique in which position information is propagated along a path by hopping from node to node until it reaches control station <NUM>.

In some embodiments, the position information sent by the nodes 302a-c may be telemetry data that is generated at each respective node and provided to other nodes in the mesh network (e.g., nodes 302a-c) and/or the control station <NUM> for various purposes. In one embodiment, the control station <NUM> may provide a user interface for a user <NUM> to send a command <NUM> to mobile platform <NUM>. For example, the control station <NUM> may provide a representation of the nodes 302a-c in the user interface based on the position information 306a-c received from the nodes 302a-c. The user interface may allow the user to view the nodes 302a-c and their respective positions in relation to a position of mobile platform <NUM>. Control station <NUM> may receive a selection of one or more nodes of nodes 302a-c and command <NUM> that the user wants the mobile platform <NUM> to execute upon the selected node(s). For example, user <NUM> may enter a command to follow node 302a, image track node 302a, and/or land at a landing location associated with node 302a. Control station <NUM> may send, to mobile platform <NUM>, command <NUM> including information about node 302a that would facilitate execution of command <NUM>. For example, the information may identify node 302a and provide any data required for mobile platform <NUM> to establish a direct wireless connection with node 302a.

In some embodiments, mobile platform <NUM> may perform various operations in response to receiving command <NUM> and information about selected node 302a from control station <NUM>, including receiving position information 306a through a direct wireless connection with node 302a as further discussed below in reference to <FIG>.

As shown in <FIG>, communication system <NUM> of mobile platform <NUM> may receive command <NUM> from control station <NUM>. In some embodiments, command <NUM> may identify a selected node (e.g., node 302a). Communication system <NUM> may communicate command <NUM> to navigator module <NUM>. Navigator module <NUM> may be configured to receive command <NUM> from control station <NUM> by communication system <NUM>. In response to receiving command <NUM>, navigator module <NUM> may send a control signal to telemetry module <NUM> to subscribe to position information corresponding to node 302a. Telemetry module <NUM> may be configured to establish a wireless connection <NUM> between communication system <NUM> and node 302a in response to the control signal sent after command <NUM> was received. Once wireless connection <NUM> has been established, telemetry module <NUM> may receive broadcasted position information 306a from node 302a through wireless connection <NUM> and communication system <NUM>. Telemetry module <NUM> may provide, to navigator module <NUM>, position information 306a received from node 302a. For example, telemetry module <NUM> may post periodic (e.g., by the second) or non-periodic updates to navigator module <NUM> related to the position information received from node 302a.

Based on command <NUM> and the position information 306a updates provided by telemetry module <NUM>, navigator module <NUM> may generate a control signal configured to cause mobile platform <NUM> to operate in accordance with command <NUM> and based on position information 306a. Navigator module <NUM> may provide the control signal to controller <NUM>, and controller <NUM> may receive the control signal. Controller <NUM> may be configured to operate one or more elements of mobile platform <NUM> in accordance with command <NUM> and based on position information 306a.

In various embodiment, command <NUM> may correspond to a navigation command instructing the mobile platform to follow node 302a using position information 306a. In entering command <NUM>, user <NUM> may indicate an offset distance defining a distance that mobile platform <NUM> should be separated from node 302a when mobile platform <NUM> is following node 302a. As an illustration, in such cases, node 302a may be another mobile platform. As another illustration, node 302a may be a radio device coupled to a vehicle. Controller <NUM> may operate propulsion system <NUM> to adjust a position of mobile platform <NUM> such that mobile platform <NUM> follows node 302a by the offset distance.

In some embodiments, control station <NUM> may send additional commands to mobile platform <NUM>. For example, an additional command may be a second navigation command instructing mobile platform <NUM> to follow a second node using second position information corresponding to the second node and by a second offset distance. In response to receiving the second navigation command, the navigator module <NUM> may subscribe to the second position information, and telemetry module <NUM> may establish a second wireless connection between the communication system <NUM> and the second node. Telemetry module <NUM> may receive the second position information from the second node by the second wireless connection and provide the second position information to navigator module <NUM>. Navigator module <NUM> may provide a second control signal to controller <NUM> to direct controller <NUM> to operate propulsion system <NUM> such that mobile platform <NUM> follows the second node by the second offset distance. In some embodiments, navigator module <NUM> may unsubscribe to the position information received from the prior node (e.g., node 302a), and telemetry module <NUM> may disconnect the wireless connection <NUM>. However, in some cases, the navigator module <NUM> may remain subscribed to the prior node and the wireless connection <NUM> may be maintained, such as to execute other commands on the prior node or further monitor the prior node's position.

According to various embodiments, command <NUM> may be an image tracking command instructing mobile platform <NUM> to capture one or more images frames of node 302a. In such cases where command <NUM> is an image tracking command, controller <NUM> may operate propulsion system <NUM> and imaging system <NUM> (e.g., via gimbal system <NUM>) of mobile platform <NUM> in accordance with the image tracking command and based on position information 306a. For example, navigator module <NUM> may receive position information 306a and generate a control signal based on position information 306a and a position/orientation of mobile platform <NUM> to provide to controller <NUM> such that controller <NUM> may operate propulsion system <NUM> and imaging system <NUM> to adjust a position and/or orientation of mobile platform <NUM> and a position and/or orientation of imaging system <NUM> such that image system <NUM> can capture one or more image frames of node 302a.

In certain embodiments, command <NUM> may be a landing command instructing mobile platform <NUM> to land at a landing location associated with node 302a. In such cases where command <NUM> is a landing command, controller <NUM> may operate propulsion system <NUM> in accordance with the landing command and based on position information 306a. For example, navigator module <NUM> may receive position information 306a and generate a control signal based on position information 306a and a current position/orientation of mobile platform <NUM>. Navigator module <NUM> may provide the control signal to controller <NUM> to cause controller <NUM> to operate propulsion system <NUM> to steer mobile platform <NUM> to the landing location and land mobile platform <NUM> on the landing location.

<FIG> illustrates user interface <NUM> of control system <NUM> in accordance with one or more embodiments of the disclosure. User interface <NUM> may provide various user interface elements that a user may interact with to operate mobile platform <NUM>. For example, user interface <NUM> may present nodes of a mesh network to a user using position information received by control system <NUM> from the nodes. For example, as shown in <FIG>, an element <NUM> provided in user interface <NUM> may represent a node in a mesh network (e.g., node 302a).

In some embodiments, the user may select nodes in the user interface and enter commands to send to mobile platform <NUM> to interact with the selected nodes. For example, an element <NUM> may be configured to allow the user to enter a navigation command (e.g., follow node 302a). An element <NUM> may be configured to allow the user to enter an image tracking command (e.g., track node 302a). An element <NUM> may be configured to allow the user to enter a land command (e.g., land at landing location associated with node 302a). An element <NUM> may be configured to allow the user to adjust (e.g., via a sliding scale or number entry) an offset distance by which mobile platform <NUM> will be separated from a selected node when following the node or image tracking the node.

Elements <NUM> and <NUM> may correspond to available mobile platforms that can receive commands from control station <NUM>. For example, element <NUM> may represent mobile platform <NUM>. The user may select element <NUM> and enter commands and offset distances where appropriate, and the commands may be sent from control station <NUM> to mobile platform <NUM> (e.g., via communication systems <NUM> and <NUM>). As further discussed below, the command may cause the mobile platform <NUM> to establish a wireless connection to the selected node, subscribe to position information corresponding to the selected node and received from the selected node via the wireless connection, and operate the mobile platform in accordance with the command and in response to the position information of the selected node.

<FIG> illustrate a flow diagram of a process <NUM> for operating mobile platform <NUM> in accordance with one or more embodiments of the disclosure. In some embodiments, process <NUM> of <FIG> may be implemented as software instructions executed by one or more logic circuits associated with corresponding electronic devices, sensors, and/or structures depicted in <FIG>. More generally, the operations of <FIG> may be implemented with any combination of software instructions, mechanical elements, and/or electronic hardware (e.g., inductors, capacitors, amplifiers, actuators, or other analog and/or digital components). It should also be appreciated that any step, sub-step, sub-process, or block of process <NUM> may be performed in an order or arrangement different from the embodiments illustrated by <FIG>. For example, in some embodiments, one or more blocks may be omitted from or added to process <NUM>. Furthermore, block inputs, block outputs, various sensor signals, sensor information, calibration parameters, and/or other operational parameters may be stored to one or more memories prior to moving to a following portion of a corresponding process. Note that in describing <FIG>, reference is made to <FIG>, however, it will be appreciated that embodiments of <FIG> are not limited by <FIG>.

At block <NUM>, control station <NUM> may receive position information corresponding to a plurality of nodes participating in a mesh network. For example, the nodes may use telemetry to determine their respective positions. In some embodiments, the nodes may send their respective position information using a Cursor-on-Target communication protocol. For example, nodes may send information that identifies the sending node, a current position information of the sending node, and when the information was sent from the sending node. In one embodiment, position information for nodes may include a GPS coordinate position (e.g., latitude, longitude, altitude, and/or time). In another embodiment, position information may include position information that indicates distance(s) relative to other nodes in the mesh network.

At block <NUM>, control station <NUM> may present the nodes in user interface <NUM> using the position information corresponding to the nodes, as discussed in reference to <FIG>. At block <NUM>, control station <NUM> receives a node selection (or node selections) and a command (or commands) in user interface <NUM> from a user <NUM> associated with control station <NUM>. For illustrative purposes, reference below is made to node 302a as the selected node and command <NUM> as the inputted command, however, it will be appreciated that one or more other nodes in the mesh network may be selected and one or more other commands may be provided as input in the user interface <NUM>.

At block <NUM>, the node selection and the command are sent from control station <NUM> to mobile platform <NUM>. For example, communication system <NUM> of control station <NUM> may transmit, to communication system <NUM> of mobile platform <NUM>, a signal that has encoded therein the command <NUM>, which includes an identification of the selected node, node 302a.

At block <NUM>, navigator module <NUM> of mobile platform <NUM> receives command <NUM> by the communication system <NUM>. In some embodiments, command <NUM> may be decoded by navigator module <NUM>. At block <NUM>, in response to command <NUM> and the identified selected node 302a, navigator module <NUM> may subscribe to position information 306a corresponding to the selected node 302a. For example, navigator module <NUM> may instruct telemetry module <NUM> to receive position information 306a from node 302a and provide periodic updates of the position information 306a of node 302a back to navigator module <NUM>. In some embodiments, prior to subscribing to the position information 306a corresponding to the selected node 302a, telemetry module <NUM> may have filtered out radio waves broadcasted by node 302a or may have disregarded a frequency channel in which node 302a was broadcasting its position information 306a.

At block <NUM>, telemetry module <NUM> of mobile platform <NUM> may establish a wireless connection <NUM> with the selected node 302a. For example, telemetry module <NUM> may direct communication system <NUM> to begin receiving the position information 306a from node 302a. In some cases, this may mean directing the communication system <NUM> to pass (e.g., stop filtering) the broadcasted position information 306a from node 302a to telemetry module <NUM>. In some embodiments, command <NUM> may identify the selected node 302a and include information to allow telemetry module <NUM> to receive the position information 306a from node 302a. For example, control station <NUM> may include decryption instructions that allow telemetry module <NUM> to begin receiving the position information 306a from node 302a and decrypting the position information 306a so that it may be used in controlling mobile platform <NUM> to interact with node 302a according to command <NUM>.

At block <NUM>, telemetry module <NUM> receives position information 306a corresponding to the selected node 302a. For example, telemetry module <NUM> may receive the position information 306a by communication system <NUM>. In various embodiments, telemetry module <NUM> may continue to receive the position information 306a from node 302a for the duration that navigator module <NUM> is subscribed to the position information 306a of node 302a. In some embodiments, navigator module <NUM> may be subscribed to the position information 306a of node 302a until the tasks associated with command <NUM> have been completed. In some embodiments, navigator module <NUM> may be subscribed to the position information 306a of node 302a until a superseding command or override instructions (e.g., manual steering by user <NUM>) are received from control station <NUM>. For example, if mobile platform <NUM> was commanded to follow node 302a, but received a subsequent command to follow node 302b, navigator module <NUM> may unsubscribe from position information 306a of node 302a and telemetry module may disconnect wireless connection <NUM>. Then, navigator module <NUM> may subscribe to position information 306b of node 302b and a new wireless connection may be established between node 302b and telemetry module via communication system <NUM>. However, unsubscribing and disconnecting from prior nodes may not be necessary in all cases, as mobile platform <NUM> may need to continue to monitor a position of the prior node (e.g., node 302a) that it was following (e.g., for image tracking, positional awareness, data routing in the mesh network, etc.).

At block <NUM>, telemetry module <NUM> may provide, to the navigator module <NUM>, the position information 306a received from the selected node(s) (e.g., node 302a). For example, the position information 306a may be provided to navigator module <NUM> as an analog or digital signal. At block <NUM>, navigator module <NUM> may translate the position information 306a provided by telemetry module <NUM> into a control signal for controller <NUM> of mobile platform <NUM>. For example, navigator module <NUM> may determine how the mobile platform <NUM> should be operated based on its own position and orientation and the position information 306a corresponding to node 302a. The control signal may be generated by navigator module <NUM> to control controller <NUM> to operate mobile platform <NUM> such that command <NUM> can be completed. The control signal provided to controller <NUM> may be continuously updated to adjust mobile platform <NUM> based on the position information 306a that is being received from node 302a.

As an illustration of the control signal provided to controller <NUM>, assume a case in which node 302a is another mobile platform and command <NUM> is a navigation command to follow node 302a. Node 302a may be flying in a direction away from mobile platform <NUM>. Based on the position information 306a that is being received from node 302a, a position of mobile platform <NUM> will have to be adjusted so that it can follow node 302a. For example, using the position information 306a of node 302a and an offset distance associated with the command to follow node 302a, navigator module <NUM> may determine a position to where mobile platform <NUM> should move, to be in accordance with the command to follow node 302a.

As another illustration of the control signal provided to controller <NUM>, assume a case in which node 302a is a base station (e.g., a stationary base station, a moving aircraft, or vehicle base station) having an associated landing location. Using the position information 306a received from node 302a, the mobile platform <NUM> may navigate toward node 302a. Once mobile platform <NUM> is within a certain proximity to node 302a and the landing location, it may land using one of various techniques. For example, the landing location associated with node 302a relative to the position information 306a provided by node 302a may be known and used by navigator module <NUM> to generate a control signal for controller <NUM> that would steer mobile platform <NUM> to the landing location. In some cases, controller <NUM> may control imaging system <NUM> to capture image frames of the landing location to assist navigator module <NUM> in steering mobile platform <NUM> to the landing location and landing mobile platform <NUM> on the landing location. Using imaging system <NUM> may assist when node 302a is moving and mobile platform <NUM> attempts to land on the landing location associated with node 302a while it is moving.

As another illustration of the control signal provided to controller <NUM>, assume a case in which command <NUM> is an image tracking command instructing mobile platform <NUM> to track node 302a using imaging system <NUM> of mobile platform <NUM>. Using the position information 306a received from node 302a, the mobile platform <NUM> may position and orient itself to capture image frames of node 302a. Based on the position information 306a that is being received from node 302a, a position of mobile platform <NUM> may have to be adjusted so that it is within range of node 302a to capture the image frames with sufficient detail. In some cases, the image tracking command may include an offset or desired distance that the mobile platform <NUM> should be from node 302a when capturing the image frames. Further based on the position information 306a that is being received from node 302a, an orientation of mobile platform <NUM> and/or imaging system <NUM> (e.g., via gimbal <NUM>) may have to be adjusted to capture image frames of node 302a. Navigator module <NUM> may determine a position to where mobile platform <NUM> should move, to be in accordance with the command to image track node 302a. Navigator module <NUM> (and/or logic circuit <NUM>, which may include navigator module <NUM>) may determine what adjustments are required to the orientation of mobile platform <NUM> and/or imaging system <NUM> so that the image frames of node 302a may be captured. The control signal may be generated by navigator module <NUM> (and/or logic circuit <NUM>) based on the required adjustments to the position of mobile platform <NUM> and the orientation of mobile platform <NUM> and/or imaging system <NUM>.

At block <NUM>, navigator module <NUM> may send the control signal to controller <NUM>. In some embodiments, the control signal may be sent by logic circuit <NUM> to controller <NUM>. In further embodiments, navigator module <NUM> may be implemented in logic circuit <NUM>. At block <NUM>, controller <NUM> may receive the control signal. At block <NUM>, controller <NUM> may operate mobile platform <NUM> in accordance with the control signal and based on the position information 306a corresponding to node 302a. (e.g., the control signal sent to controller <NUM> may be continuously adjusted based on the position information 306a received from node 302a so that the mobile platform <NUM> can adjust its position/orientation relative to node 302a to execute command <NUM>). For example, when mobile platform <NUM> receives a navigation command to follow node 302a or image track node 302a, controller <NUM> may operate propulsion system <NUM> and/or imaging system <NUM> based on the control signal to move mobile platform <NUM> to a position relative to node 302a that allows mobile platform <NUM> to follow node 302a and/or capture image frames of node 302a. As another example, when mobile platform <NUM> receives a landing command to land at a landing location associated with node 302a, controller <NUM> may operate propulsion system <NUM> and/or imaging system <NUM>, based on the control signal, to land mobile platform <NUM> at the landing location.

Thus, embodiments of the present disclosure improve the operational flexibility of mobile platforms. For example, the present disclosure provides a user with the ability to designate a node in a mesh network as a follow target. Moreover, the user may dynamically swap follow targets from one node to another node in the mesh network. For example, a mobile platform may be commanded to follow a first node that is another mobile platform, then the mobile platform can be commanded to follow a second node that is a radio device held by a human. A control station may conveniently provide a user interface that identifies the different nodes and their types and allows the user manage commandment of the mobile platform. Embodiments of the present disclosure further allow a mobile platform to be commanded to follow other autonomous vehicles, including air, ground, or water vehicles that are participating in the mesh network. In some cases, a plurality of mobile platforms and autonomous or semi-autonomous platforms (e.g., vehicles) may be daisy chained together such that platforms in the chain have a target to follow and a leading platform can lead the chain to a desired location.

It will further be appreciated that prior to the present disclosure, a mobile platform such as a UAV could follow a base station only using an internal radio connection. However, the present disclosure provides embodiments in which a UAV may follow any radio marker that is part of a mesh network and provides position information (e.g., GPS coordinates) by utilizing internal or external radio connections.

Claim 1:
A control station (<NUM>) comprising:
a communication system (<NUM>) configured to pass wireless signals between the control station and a mesh network comprising a plurality of nodes (<NUM>);
a user interface (<NUM>); and
a logic circuit (<NUM>) configured to:
receive (<NUM>), via the communication system, position information (<NUM>) corresponding to the nodes,
present (<NUM>) the nodes in the user interface (<NUM>) using the position information corresponding to the nodes, the control station (<NUM>) being characterised in that the logic circuit (<NUM>) is further configured to:
receive (<NUM>) a user selection of a node (302a) from the plurality of nodes,
send (<NUM>) to a mobile platform (<NUM>), by the communication system, a command (<NUM>) identifying the selected node, and
wherein the command causes the mobile platform to establish (<NUM>) a wireless connection to the selected node, receive (<NUM>) position information (306a) corresponding to the selected node from the selected node by the wireless connection, and operate (<NUM>) a propulsion system of the mobile platform in response to the position information of the selected node.