Monday, November 30, 2015

Patent Assignment


1.      Methods for adaptive control in a UAV (drone) carrying a hanging load
a.      1000000800044
b.      with a feedback linearization controller (FLC)
2.      A micro-aerial vehicle with built-in methods for running on land, landing, takeoff, and flying
a.      US 20140319266 A1
3.      Method for automatically changing the altitude of a drone in anticipation of doing a flip, and then doing the flip
a.      US 20130006448 A1
4.      Method to send drone information to users connected via iOS devices
a.      US 20120299751 A1
5.      A device with a touchscreen used to communicate with the drone, and it’s appropriate methods
a.      US 20110221692 A1
6.      An application that allows user to receive real-time aerial imagery from drones
a.      US 20120299751 A1
7.      A modular drone
a.      US 20140277854 A1
8.      Method for deploying a parachute on a drone
a.      7643887
9.      A type of drone made for investigating closed environments
a.      51752823
10.   A device for launching and recovering a drone, and a drone designed to complement the device
a.      US 20120292430 A1
11.   Generic drone control system
a.      25449387
12.   System for sending virtual shots between drones fitted with ID beacons
a.      US 20110299732 A1
b.      the victim recognizes itself in the image of the attacker
13.   A device shaped like a ring which absorbs vibrations of the drone and can hold a sensory device within it
a.      US 20120234969 A1
14.   A drone designed for railway maintenance
a.      US 20130220162 A1
15.   Control system for drones using a pair of stick controls
a.      25021972
16.   Controlling drone’s acceleration through feedback from another accelerating object
a.      22577543
17.   Target Seeking Simulator
a.      25503929
18.   Fire Detection System Using AI
a.      24206901
19.   Precision parachute recovery system
a.      24961033
20.   Methods and apparatus for vision-based object-tracking
a.      US 20130272570 A1
b.      library of images
c.      optical flow module
d.      decision forest module
e.      color tracking module
21.   Systems and methods for vision-based target tracking, designed for use by a UAV
a.      54290321
22.   Methods and systems for swapping the battery in a drone, using an energy station
a.      54106948
23.   Methods for having a UAV extract energy from a transmission line (power line?)
a.      39596616
24.   Abstract idea for resources to be passed from a self-sacrificing drone to a main drone (i.e. a power supply)
a.      US 20130132317 A1
25.   Methods, systems, and apparatus for simulating swarm behaviour in drones
a.      US patent: 9,104,201
b.      also supports controlling the drones to move along a path while maintaining the formation through a minimum-distance-to-other-drones requirement

AREAS OF FUTURE INNOVATION

1.   Reference #23 and #22 remind me of the recent ideas relating to charging a battery remotely (probably something with a strong magnetic field around it). I’m not sure exactly how it works, but I think this method of wireless charging could be used to help drones fly without having to land
2.   References #20,  #21,  #12, and #25 suggest that UAVs could collectively send data to a single control center, which could create maps, etc. with the total data and send individualized controls to each of the drones based upon what the center knows about the environment. Basically, the drones could use each other's video feeds to know what they cannot see.
3.   In general, a problem with drones seems to be the low amount of power they can store. Future innovation could offer energy-reducing methods for flying the drone, like
a.      making it lighter
i.       lighter materials
ii.      perhaps incorporate a form of induced positive buoyancy, like attaching a small zeppelin-like component filled with helium
b.      lessening motor friction
c.      shrinking components
d.      creating a more efficient battery

Progress Report - 12/01/15

Progress:
  • We successfully downloaded OpenCV to work with the corresponding node.js module
  • We successfully downloaded the opencv module for node.js, which can be combined with the ardrone module
  • We’ve gone through some of the examples for image processing
    • conversion to grayscale
    • copying images
    • saving and importing images
    • creating a binary image highlighting pixels within a certain RGB range
    • finding faces
    • drawing circles
Problems:
  • The functions that enabled us to complete the image processing examples are very self-contained, and I have found it hard to learn to do things at a basic level:
    • How to get the color of a pixel at a given location in the image matrix
    • How to set the value of a pixel at a given location
    • The format in which the pixel values are stored
    • The coordinate system used to create the matrices
Plans:

  • Figure out the answers to the questions posed in the “Problems” section
  • Feed in the drone’s video into a method using the opencv module, and display the video
  • Run the image processing examples on the drone video pipeline
  • Create a command loop that runs forever
    • necessary to analyze images and send commands indefinitely
    • Perhaps this would be in a form as simple as:
      • for var i=0; i<N; i++ {
      •      delay 100
      •      turn 10˚ clock-wise
      • }

Sunday, November 1, 2015

Progress Report - 11/1/15

Progress:
  • Learned some more terminology for the ar-drone module of node.js
  • Downloaded OpenCV on Mac computers successfully
  • We were able to write complete programs using node.js and run them, so that the drone could do a sequence of actions simply by running the script.
  • Got further in the install process of opencv after realizing opencv 3.0 wasn’t going to work out
Problems:
  • The opencv module is proving difficult to download, much less integrate into a program with the ar-drone module
  • Downloading opencv 3.0 was impossible, coming across errors before the install even started. Once downloading opencv 2.4.1, the install seemed to be going well until the end where Owen came across some warnings, and Theo came across errors.
  • Still unaware how to fix the drifting problem of the drone, but we plan to look further into that as the programming is developed a little more.
Plans:

  • Check if Linux computer already has the opencv module installed — if so, try writing a program (as described in previous report) with it.
  • Hopefully fixing the opencv problems on the mac laptops, and if that is fixed we will integrate it with node.js on OSX instead of Linux.
  • Start to learn and write programs using both opencv and node.js
    • Unsure of which platform this will ultimately take place on, Linux or OSX
  • Once we become experienced with the basic examples of opencv we can start to move towards the more complex programs that will allow autonomous flight.