Over a million developers have joined DZone.

A Drone Is a Smartphone that Flies

Do drones have your attention? If you've been looking into them, check out Pyze's offering (and its code) that lets you control a drone with your phone.

· IoT Zone

Access the survey results 'State of Industrial Internet Application Development' to learn about latest challenges, trends and opportunities with Industrial IoT, brought to you in partnership with GE Digital.

A drone is a smartphone that flies —@BenedictEvans

Now there are catchy headlines that don’t make sense, but we click on them anyway, right before clicking on that “Back to Facebook” button. There are headlines that are forced, "It's Netflix but for used clothes," or humorous, "Uber but for piggybacks."  And there are headings that grab your attention and, upon musing, make a ton of sense. And the Internet agrees. It's not easy to explain something succinctly and powerfully.

App-Controlled Drones

Your app running on a non-flying iOS or Android smartphone is the peripheral brain that controls and configures the drone, which is a "smartphone that flies."

A drone-controlling app must understand the:

  • drone technographics,

  • optional radio transmitter that physically connects to the tablet or phone, and

  • itself, the app used to control the drone and attached radio transmitter.

Additional data points that are immensely useful include are preflight and inflight health checks, flight paths and planning, aerial videos and pictures, time-lapse, flying modes, and safety management.  Of course, there are many more.

This article talks about various drones used in the industry and what you should track in the app that controls these app-controlled drones, to make the experience for your users much more powerful.

If you'd like to follow along, take a look at the APIs:

What is a Drone?

The answer certainly depends on who you ask. There is certainly a lot of differing opinions on what a drone is. Before we attempt to answer or explain what a Drone means to us, and how the military, commercial and recreational drones differ, let's go through some terminology where there is a general consensus.

Unmanned Aerial Vehicles (UAVs) are simply aircraft without pilots onboard the aircraft. When flown remotely either from the ground, ship, or an adjacent aircraft, they are referred to as Remotely Piloted Aircraft (RPA). The military also uses the term Remotely Piloted Aerial Vehicle (RPAV). Remotely Piloted Aircraft, together with the remote control system, are referred to as Unmanned Vehicle Systems (UAS) by the US Federal Aviation Administration.

Autonomous aircraft are UAVs that use GPS, sense and avoid collision avoidance systems, autopilots, and a multitude of sensors. They can fly autonomously based on pre-programmed flight plans. Advanced autonomous aircraft also use a combination of artificial intelligence, image and video recognition software on board and have the capability of rerouting and correcting previously programmed flight plans.

helicopter is lifted and propelled by rotors. They can be manned or unmanned. They generally have two rotors — one for lift and another for circular stabilization. A quad-rotor helicopter, commonly known as a Quadcopter, has four rotors, two rotating clockwise and the other two rotors rotating anti-clockwise, collectively to control the speed and lift of the Quadcopter. An Octocopter and Hexacopter have eight and six rotors respectively, with half of the rotors rotating clockwise.

So, What Is a Drone?

Commercial drones are UAVs that transport a payload or carry out a specific function, including thermal imaging, firefighting, aerial surveillance, police support, homeland security, geo-mapping, nature photography, real-estate photography, wildlife and livestock monitoring, traffic reporting, and surveying for mineral deposits and fossil fuels.

Military drones perform thermal imaging, aerial surveillance, launch missile strikes, or perform photography.

Recreational drones range from camera-equipped toys to prosumer first-person-view drones.

Anti-Drone drones include one equipment like Maldrone or DroneShield mounted on a drone that works on protected radio frequencies are custom built for government use.

Underwater drones. Not all Drones fly. Underwater exploration drones are usually tethered as radio does not work underwater.

Ground drones or Unmanned Ground Vehicles (UGV) operate on the ground. The use ranges from military to toys for hobbyists.

Unmanned ground, aerial, and underwater vehicles capable of being remotely controlled, with autonomous software ranging from a simple 'return home' feature to artificial intelligence with a multitude of sensors, all may be referred to as drones.

App-Controlled Drones

We love app-controlled drones. All devices that can be controlled by an iOS or Android app, which acts as a remote controller for the device and optionally provides first-person-view to the commercial drone pilots and hobbyists.

This includes management of drones and drone-like devices over Bluetooth (short range), ad-hoc Wi-Fi (medium range), and radio via an external transmitter connected to controlling device (long range).

A killer app capable of controlling drones must track the drone technographics, the radio transmitter that physically connects to the controlling device, the app used to manage both the drone and attached radio transmitter, along with user of the app.

Preflight Health Check

Before beginning a flight, it is a good idea to do a quick health check of both the drone and transmitter or controller. A preflight health check could include the storage (usually a micro SD card) presence and status if the drone is equipped with a camera, battery status of drone and device, calibration status, and satellite lock status for GPS-equipped drones.

In-Flight Health Check

An in-flight check includes the overall status of drone, app, device, and attached transmitter.

Roll status: accomplished by controlling the aileron (moving the right stick to the left or right), which maneuvers the drone/quadcopter left or right.

Pitch status: accomplished by controlling the elevator (moving right stick forwards or backward), which maneuvers the drone/quadcopter forward or backward.

Yaw status: accomplished by controlling Rudder (moving the left stick to the left or to the right) Rotates the drone/quadcopter left or right. Points the front of the drone/quadcopter different directions and helps with changing directions while flying.

Throttle status: accomplished by controlling Throttle. Engaged by pushing the left stick forward. Disengaged by pulling the left stick backward. This adjusts the altitude, or height, of the quadcopter.

Trimming settings: Adjust roll, pitch, yaw, and throttle if they are off balance. e.g. "+20-20+4+0" would mean adjustments in percent of 20%, -20%, +4% and 0% for roll, pitch, yaw, and throttle respectively.

Drone and App Connected or Disconnected

The drone is connected to the app via the controlling device or transmitter. The time to connect depends on surroundings and interference. Post this after successfully connecting.

The drone is disconnected from controlling device (app + device + attached transmitter) either explicitly or because of environment or distance.

Drone is Airborne or Has Landed

This should be sent after the drone is airborne or has landed, along with relevant status.

Flight Paths and Planning

Flight paths are pre-programmed paths that the drone would fly. Every flight path should be associated with a unique identifier or name. Report when a new flight path is createduploadeddeletedflown, or edited (when a flight path is edited it needs to be uploaded again to the drone).

First Person View

This allows a lower quality video to be transmitted to the controller in near real-time with an acceptable lag. Report when enabling and disabling FPV.

Aerial Videos, Pictures, and Time-Lapse

Report when starting and stopping aerial videos or pictures. Each video or picture should be identified by an identifier.

In time-lapse drone photography, the frequency at which frames are captured (the frame rate) is much lower than that used to view the sequence. When played at normal speed, time appears to be moving faster and thus lapsing. For example, an image of a scene may be captured once every second then played back at 30 frames per second; the result is an apparent 30 times speed increase. Specify total shots and seconds between shots. The playback time would approximately be the product of total shots and seconds between shots

Return to Base

Request that the drone to returns to base. This is where the drone comes back to the pilot. Some drones return back to the original location from which they were airborne and others return to the current location of the transmitter. The latter uses the GPS from the phone device.

Flying Modes

Drones support multiple flying modes depending on the purpose they serve and experience of the pilot.

Helicopter flying mode: Similar to flying a helicopter, once you tilt the quadcopter (roll) it will not auto-level itself back to its original position. Even if you let go of the stick and it returns to the middle, the drone will stay tilted. Not all drones support this manual mode.

Attitude or Auto-level flying mode: Report when switched to attitude or auto-level flying mode. Once the sticks are centered, the drone will level itself out.

GPS Hold flying mode: Switched to GPS Hold flying mode. Returns the drone's position once the sticks have been centered. The same as attitude mode (auto-level) but using an oonboardGPS. Drones that support GPS usually have this mode.

Custom Device Mode: A number of drones and quadcopter have numeric modes. Report when switching to a custom device mode. Some drones have numbered modes (1, 2, 3).

Safety Limits

Set Maximum Altitude: Drones that support GPS can limit the altitude to avoid flying into restricted airspace

Set Auto Return Time: This feature is available on drones that are used for surveying. If the drone has to survey four jobs, you can specify the time in seconds for a job to ensure enough battery is available for subsequent jobs. The math is performed by the app.

Set Auto Return When Memory Reaches Threshold: The drone can be requested to return when storage memory reaches a low threshold. E.g. return when storage is below 4KB. This is useful for surveilling drones.

Set Auto Return When Battery Reaches Threshold: The drone can be requested to return when the battery reaches a low threshold.

And there you have it. If you're looking to tinker with drones, this should start you off.

The IoT Zone is brought to you in partnership with GE Digital.  Discover how IoT developers are using Predix to disrupt traditional industrial development models.


Published at DZone with permission of Dickey Singh, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}