The present application relates to technically inventive, non-routine solutions that are necessarily rooted in computer technology and that produce concrete technical improvements.
As understood herein, airborne drones are becoming increasingly popular for a wide variety of uses.
Accordingly, present principles may be applied both to virtual reality (VR) drones and physical drones, and to mixed reality settings that may use both.
As further understood herein, it may be possible that regulatory agencies will require physical drones to have a remote identification function. Present principles are directed to a global positioning satellite (GPS) receiver in a drone control device that is remote from the drone. The drone control device also includes a transmitter that sends GPS packets along with control packets to the drone. In turn, the drone also has a GPS receiver and a transmitter that transmits both the controller and drone GPS coordinates.
In addition to location information, the data sent by the drone may also include drone ID, drone altitude, drone velocity, drone control device elevation, a time mark, and the emergency status, if any, of the drone.
Accordingly, an assembly includes at least one drone controller with at least one location sensor and at least one wireless transceiver. The assembly also includes at least one drone. The drone includes at least one location sensor, at least one information transmitter, and at least one processor to control flight of the drone responsive to signals from the drone controller. The processor is programmed with instructions to receive flight control signals from the drone controller, and control flight of the drone responsive to the flight control signals. The instructions are further executable by the processor to receive at least drone controller location information from the drone controller. The processor further is programmed to transmit, using the information transmitter, reporting signals. The reporting signals include location information from the drone controller and location information from the location sensor of the drone.
In some embodiments the reporting signals may further include one or more of time information correlated with the location information of the drone, altitude information of the drone, elevation information of the drone controller, drone ID, drone velocity, and emergency status of the drone.
In example embodiments the reporting signals can be sent from the drone via Bluetooth. In addition, or alternatively, the reporting signals can be sent from the drone via Wi-Fi. The reporting signals may be sent in packets.
In one embodiment the reporting signals may be sent from a transceiver receiving the flight control signals. In another embodiment the reporting signals can be sent from a transceiver not receiving the flight control signals.
In one embodiment the wireless transceiver of the drone controller sends both the flight control signals and drone controller location information to the drone. In another embodiment the wireless transceiver of the drone controller sends only the flight control signals, but not the drone controller location information, to the drone.
In example implementations, the processor of the drone is programmed with instructions to send the reporting signals periodically and automatically. In other example implementations, the processor of the drone is programmed with instructions to send the reporting signals only responsive to a command from an external device to transmit the reporting signals. In still other example implementations, the processor of the drone is programmed with instructions to send the reporting signals substantially continuously throughout flight of the drone. Yet again, example implementations, the processor of the drone may be programmed with instructions to send the reporting signals only responsive to the drone meeting at least one flight condition, such as attaining a particular altitude and/or speed and/or location.
In another aspect, a method includes receiving flight control information from a controller, and responsive to the flight control information, moving a control surface. The method further includes receiving controller location information from the controller, receiving drone location information from a global satellite positioning (GPS) receiver associated with the control surface, and transmitting, via Bluetooth and/or Wi-Fi, the controller location information and drone location information in a single packet stream.
In another aspect, a drone includes one or more control surface operable to control flight of the drone. The drone further includes at least one global satellite positioning (GPS) receiver, at least one radiofrequency (rf) receiver configured to receive flight control signals from a ground unit, and at least one Wi-Fi and/or Bluetooth transmitter. Additionally, the drone includes at least one processor programmed with instructions to control the control surface according to the flight control signals, transmit location information received from the GPS receiver via the Wi-Fi and/or Bluetooth transmitter, and transmit location information of the ground unit via the Wi-Fi and/or Bluetooth transmitter.
The details of the present application, both as to its structure and operation, can best be understood in reference to the accompanying drawings, in which like reference numerals refer to like parts, and in which:
This disclosure relates generally to computer ecosystems including aspects of consumer electronics (CE) device networks such as but not limited to computer game networks including drones used for gaming or non-gaming purposes. A system herein may include server and client components which may be connected over a network such that data may be exchanged between the client and server components. The client components may include one or more computing devices including game consoles such as Sony PlayStation® or a game console made by Microsoft or Nintendo or other manufacturer, virtual reality (VR) headsets, augmented reality (AR) headsets, portable televisions (e.g., smart TVs, Internet-enabled TVs), portable computers such as laptops and tablet computers, and other mobile devices including smart phones and additional examples discussed below. These client devices may operate with a variety of operating environments. For example, some of the client computers may employ, as examples, Linux operating systems, operating systems from Microsoft, or a Unix operating system, or operating systems produced by Apple, Inc., or Google. These operating environments may be used to execute one or more browsing programs, such as a browser made by Microsoft or Google or Mozilla or other browser program that can access websites hosted by the Internet servers discussed below. Also, an operating environment according to present principles may be used to execute one or more computer game programs.
Servers and/or gateways may include one or more processors executing instructions that configure the servers to receive and transmit data over a network such as the Internet. Or a client and server can be connected over a local intranet or a virtual private network. A server or controller may be instantiated by a game console such as a Sony PlayStation®, a personal computer, etc.
Information may be exchanged over a network between the clients and servers. To this end and for security, servers and/or clients can include firewalls, load balancers, temporary storages, and proxies, and other network infrastructure for reliability and security. One or more servers may form an apparatus that implement methods of providing a secure community such as an online social website to network members.
A processor may be a single- or multi-chip processor that can execute logic by means of various lines such as address lines, data lines, and control lines and registers and shift registers.
Components included in one embodiment can be used in other embodiments in any appropriate combination. For example, any of the various components described herein and/or depicted in the Figures may be combined, interchanged, or excluded from other embodiments.
“A system having at least one of A, B, and C” (likewise “a system having at least one of A, B, or C” and “a system having at least one of A, B, C”) includes systems that have A alone, B alone, C alone, A and B together, A and C together, B and C together, and/or A, B, and C together, etc.
Now specifically referring to
Accordingly, to undertake such principles the AVD 12 can be established by some or all of the components shown in
In addition to the foregoing, the AVD 12 may also include one or more input ports 26 such as a high-definition multimedia interface (HDMI) port or a USB port to physically connect to another CE device and/or a headphone port to connect headphones to the AVD 12 for presentation of audio from the AVD 12 to a user through the headphones. For example, the input port 26 may be connected via wire or wirelessly to a cable or satellite source 26a of audio video content. Thus, the source 26a may be a separate or integrated set top box, or a satellite receiver. Or the source 26a may be a game console or disk player containing content. The source 26a when implemented as a game console may include some or all of the components described below in relation to the CE device 44.
The AVD 12 may further include one or more computer memories 28 such as disk-based or solid-state storage that are not transitory signals, in some cases embodied in the chassis of the AVD as standalone devices or as a personal video recording device (PVR) or video disk player either internal or external to the chassis of the AVD for playing back AV programs or as removable memory media. Also, in some embodiments, the AVD 12 can include a position or location receiver such as but not limited to a cellphone receiver, GPS receiver and/or altimeter 30 that is configured to receive geographic position information from a satellite or cellphone base station and provide the information to the processor 24 and/or determine an altitude at which the AVD 12 is disposed in conjunction with the processor 24. The component 30 may also be implemented by an inertial measurement unit (IMU) that typically includes a combination of accelerometers, gyroscopes, and magnetometers to determine the location and orientation of the AVD 12 in three dimensions.
Continuing the description of the AVD 12, in some embodiments the AVD 12 may include one or more cameras 32 that may be a thermal imaging camera, a digital camera such as a webcam, and/or a camera integrated into the AVD 12 and controllable by the processor 24 to gather pictures/images and/or video in accordance with present principles. Also included on the AVD 12 may be a Bluetooth transceiver 34 and other Near Field Communication (NFC) element 36 for communication with other devices using Bluetooth and/or NFC technology, respectively. An example NFC element can be a radio frequency identification (RFID) element.
Further still, the AVD 12 may include one or more auxiliary sensors 38 (e.g., a motion sensor such as an accelerometer, gyroscope, cyclometer, or a magnetic sensor, an infrared (IR) sensor, an optical sensor, a speed and/or cadence sensor, a gesture sensor (e.g., for sensing gesture command), providing input to the processor 24. The AVD 12 may include an over-the-air TV broadcast port 40 for receiving OTA TV broadcasts providing input to the processor 24. In addition to the foregoing, it is noted that the AVD 12 may also include an infrared (IR) transmitter and/or IR receiver and/or IR transceiver 42 such as an IR data association (IRDA) device. A battery (not shown) may be provided for powering the AVD 12, as may be a kinetic energy harvester that may turn kinetic energy into power to charge the battery and/or power the AVD 12. A graphics processing unit (GPU) 44 and field programmable gated array 46 also may be included.
Still referring to
Now in reference to the afore-mentioned at least one server 52, it includes at least one server processor 54, at least one tangible computer readable storage medium 56 such as disk-based or solid-state storage, and at least one network interface 58 that, under control of the server processor 54, allows for communication with the other devices of
Accordingly, in some embodiments the server 52 may be an Internet server or an entire server “farm” and may include and perform “cloud” functions such that the devices of the system 10 may access a “cloud” environment via the server 52 in example embodiments for, e.g., network gaming applications. Or the server 52 may be implemented by one or more game consoles or other computers in the same room as the other devices shown in
The components shown in
Also, in
If the GPS receiver 300 outputs location only and not elevation, elevation can be obtained by the processor 302 by accessing an electronic database or map and correlating location to elevation.
The drone controller 202 also may include additional wireless transmitters, such as one or more Bluetooth transceivers 321A and/or one or more Wi-Fi transceivers 321B.
Turning to example components of the drone 204, a transceiver 322 that is configured complementarily to the rf transceiver 314 of the drone controller 202 receives wireless commands from the controller 202 and provides the commands to one or more processors 324 accessing one or more computer storages 326 in the drone 204 to execute logic consistent with present principles. The drone processor 324 also receives input from one or more location sensors such as one or more GPS receivers 328 along with time information from one or more computer clocks 330.
The GPS receiver 328 in the drone may provide location information to the drone processor 324 as well as altitude information. In addition, or alternatively, altitude information may be provided to the drone processor 324 by one or more altimeters 332 in the drone 204. An altimeter may be instantiated by a magnetic compass and/or barometer. Moreover, the speed of the drone 204 may be reflected in the signals from the drone GPS receiver 328 or the drone processor 324 may calculate speed using location signals from the drone GPS receiver 328 and time information from the clock 330. Yet again, in addition or alternatively, speed information may be provided to the drone processor 324 by one or more speed or velocity sensors 334 in the drone 204.
The drone processor 324 moves the control surfaces and engine or motor of the drone 204 in accordance with commands from the drone controller 202 by means of control circuitry 336. Further, the drone 204 may also include one or more Wi-Fi transceivers 338 and/or one or more Bluetooth transceivers 340.
With the architectures of
Proceeding to block 402, the drone controller 202 also sends its location and elevation information along with time indications correlated to those indications to the drone 204. These signals may be sent over any of the one or more drone controller transmitters shown in
In turn, at block 404 the drone 204 transmits, typically via its Bluetooth transmitter 340 and/or Wi-Fi transmitter 338, both the controller 200 and drone 204 GPS coordinates. In addition to location information, the data sent by the drone 204 may also include drone ID, drone altitude, drone velocity, drone controller 200 elevation, a time mark, and the emergency status, if any, of the drone. The drone ID may be unique to the drone and/or may include an ID of a registered owner of the drone.
The transmission of data at block 404 may occur periodically and automatically. For example, the transmission of data at block 404 may occur as soon as the processor in the drone receives a signal representing take-off of the drone into flight, and every N seconds thereafter.
In addition, or alternatively, the transmission of data at block 404 may occur only responsive to a command from an external device to transmit the data. The transmission of data at block 404 may occur substantially continuously throughout the flight of the drone. The transmission of data at block 404 may occur only responsive to the drone being at or above a certain altitude, or at or below a certain altitude. The transmission of data at block 404 may occur only responsive to the drone being at or above a certain speed, or at or below a certain speed. The transmission of data at block 404 may occur only responsive to the drone being at or within a certain distance of a given location, or at or outside a certain distance of a given location. Combinations of the above may be used.
In example implementations, some, or all of the information above sent from the controller to the drone may be in digital packets, each with their own universally unique identifier (UUID), and the drone processes only process packets with respective UUIDs. A 16-channel data path may be used with pulse width modulation (PWM) values for drone control commands for the drone servos that control the control surfaces of the drone.
In one example, every packet of drone control data that is sent may include the GPS coordinates of the controller. As the drone receives a packet, it processes the demanded servo positions, then reads its own GPS location and broadcasts a 2.4 GHz data packet (e.g., over Bluetooth and/or Wi-Fi) that includes both the GPS location of the drone and that of the controller (base station).
In some examples, the data packets from the drone (and/or from the controller to the drone) may be incorporated into a block chain to ensure a hacker cannot falsify another person's controller and drone to make it appear as if that other person were located at a spot they are not at. Further, the identity of the registered owner of the drone may also be part of the block chain. Each packet may be and individual block of the block chain. Top decode a packet, the block representing that packet is decoded. In this way, an encryption technique is established similar to a virtual private networks (VPN). In addition, or alternatively, standard encryption may be used on the packets and/or blocks of the block chain, such as 128- or 256-bit advanced encryption standard (AES).
As shown in
A warning selector 516 also may be provided to enable the police officer to enter a warning or other message to be sent to the selected drone/operator. In one embodiment, the warning selector 516 may include a drop-down menu of typical warnings, such as “you need to bring it in”, “entering restricted airspace”, etc. Or the officer may enter a custom message.
In addition to the drone ID data transmitted by the drone as described above, it is to be understood that other data that also may be reported, such as a picture of the drone itself to the mobile device so people receiving the broadcast can more easily ID an offending drone.
Present principles may be connected to computer games which combine the adventure of free flight with the thrill of high-speed racing. Selection from between different flight modes may be made to guide new players from novice flyers to professional drone pilots. This can enable qualification for real life drone racing events like the Drone Champions League (DCL) by enabling online play with pilots all over the world. Freestyle pilots, camera drone operators, and drone racing pilots are contemplated. Furthermore, present principles apply to theme parks where drones are used, such as for long-range events where no fences restrict the drones, but the operator still requires a way to flag drones outside of the safety zone and detract points from a score or warn them. Notifications of such may be presented on a user's head-mounted display (HMD) or goggles.
It will be appreciated that whilst present principals have been described with reference to some example embodiments, these are not intended to be limiting, and that various alternative arrangements may be used to implement the subject matter claimed herein.