Budget UAV for aerial mapping: my experience in agriculture

Finwing Penguin ready for maiden flight
Finwing Penguin ready for maiden flight

Built with a 3DR Pixhawk (APM:Plane 3.0.2), Finwing Penguin 2815 fixed wing air frame, S100 Canon camera and RFD900 Radio (excellent Australian product), my budget agricultural unmanned aerial vehicle (aUAV) has kept me busy and learning lots in any spare time over the last few months.

In my last post, Unmanned Aerial Vehicles (UAV) in Precision Agriculture, I outlined the main components of a UAV for precision agriculture focusing on a fixed wing platform for collecting high resolution paddock scale data. In this followup post I will attempt to log some of my experiences. Note that this is just a learning experience – there are many commercial UAV options available for agriculture that are less time consuming and provide similar or better results right away.



I needed a fixed wing platform that is readily available, cheap, with potential for long battery life, stability in the air and plenty of space for electrical components. I chose the Finwing Penguin. With the standard 2815 Finwing motor, 60 amp electronic speed controller (ESC), 9×6 propeller combined with a 4400Mha 3 cell Lipo battery I was only able to achieve about 20minutes flight time or enough to map about 40ha at 12m/s. I have a CXN engine mount which enables me to go to a 10″ prop which some of the gurus recommend. I could also increase my battery capacity and battery cell count to get longer flight time.

The Penguin is rather unique in its class as it has inbuilt landing gear. This consists of a pair wheels at the front and a single wheel at the back. I think this assists in preserving the plane when there is nowhere soft to belly land. The landing gear also allows you to take off like a traditional plane rather than hand launching. After making weight or centre gravity (CG) changes I will often take off from the ground. The downside is that these wheels to block up with mud quite easily if you land in a wet paddock.

The wings (including tail wing) come off for transport. I usually remove the main wings but leave tail wing in place as it is quite hard to get on and off due to awkward wiring and attachment arrangement.

The Penguin UAV does come with a pre-cut hole to install a down facing camera but it does not suit to place the camera top facing forward which is desirable. It was also very awkward to get the camera in and out as I had the Pixhawk autopilot installed above the camera position. I decided to go at the plane with a hacksaw and build a camera mount that would allow the camera to be installed from underneath the plane and also enough space to mount the camera top face forward.

S100 down facing camera mount and landing gear
S100 down facing camera mount and landing gear
Finwing Penguin UAV wings off for transport
Finwing Penguin UAV wings off for transport
UAV Finwing Penguin internal shot
UAV Finwing Penguin internal shot

Autopilot, GPS & Radio modem

As far as autopilot is concerned 3DR Pixhawk with APM:Plane 3.0.2 was the best option. At first I had issues getting my plane to fly well but once I upgraded to version 3.0.2+ the autotune feature changed the game altogether. This allowed the APM to adjust the PID settings in the plane as I manually flew it around. It works really well! During my latest flight I had an 8km/h cross wind that the APM was able to fly against successfully.

The GPS is a Ublox LEA-6M. It works well considering the price point. I did not attempt autonomous landing which is when GPS accuracy is more important. This GPS is able to get a fix within seconds of start-up and generally no issues throughout flight.

I initially used the 3DR radio modems but had all sorts of problems keeping a solid connection with my GCS. I decided to bite the bullet and buy a quality radio modem that should last me a long time and exceed all my range requirements. The RFD900 Radio pair is compatible with 3DR equipment and slotted in quite well. I did have to manufacture a cable to connect it to the Pixhawk and it took a bit of searching to figure which wires went where but I got it sorted within an hour or so. The RFD900 did have some driver issues on Windows. I had to install an old driver before I could get Mission Planner connected to the Pixhawk through RFD900. This all equates to time spent mucking around… BUT once working this product is excellent and I always have strong telemetry signal.

UAV actual flight path exported to Google Earth
UAV actual flight path exported to Google Earth

Ground Control Station (GCS)

The Mission Planner software which runs on the ground station laptop allowing you to program the UAV and monitor it in flight is very good –  especially the Auto Waypoint Survey Grid feature. This allows you to draw the area you want to on the map. Simply load in a photograph from the camera you will be using and the target elevation. From this information is draws a flight path with your desired overlap.

Footprints Survey Grid
Mission Planner: Footprints Survey Grid
Mission Planner: In Flight Data
Mission Planner: In Flight Data
Ground Control Station
Ground Control Station

Sensor & Image Processing

Canon S100 is my sensor of choice as it is a great balance of quality, price functionality and size. I started with a Canon D10 but many of the photos came out under exposed. The S100 has a larger sensor and inbuilt GPS so it is a better choice for aerial mapping. The downside to the S100 is that the lens protrudes from the camera which exposes it to damage in a rough landing.

With UAV aerial mapping you need a way for the camera to trigger every few seconds on its own. With a Canon camera it is easy using the Canon Hack Development Kit (CHDK). This updates the camera firmware, allowing you to use intervalometer scripts to trigger camera every few seconds. CHDK also offers what seems like unlimited settings for the camera. It seems difficult to find a complete set of settings to use with CHDK, but for my next flight I will try using the DroneMapper documentation to setup CHDK.

In my last flight approximately 30% of my photos came out blurry. I discarded the worst of the photos but still had to use some poor quality photos to ensure the map had no blank spots. This is probably due to a combination of camera settings, camera mount and propeller slightly out of balance.

Using desktop software trial of Agisoft Photoscan I was able to product a 40ha orthomosaic. The application works surprisingly well considering all images are taken at slightly different angle and are only provided with one GPS point for each photo. It is a very computer intense process and if I was to do a significant amount of processing would need to upgrade my computer. Alternatively I could use DroneMapper, but my dataset did not meet their requirements because I had to cull some images. I hope to try DroneMapper next time.

UAV imagery : Suntop Wheat
UAV imagery : Suntop Wheat

I took my data a step further and set up a web server to host the data as tiles. You can check it out here. How to store and share data collected by UAVs is something I have been thinking about. An orthomosaic for a single paddock can be several gigabytes and take a powerful computer to view in its raw form. The web seems like a good way to display data having a server store the data and only send bits of the image that the end user requests as they zoom in and move around.

The S100 can be modified to collect NDVI data – check here for example.

Always learning the hard way

This is my second flying UAV. My first was a Finwing Penguin as well. I spent a couple days putting my plane together and all the components. It is a nervous time flying your brand new plane for the first time. The first time out my plane few OK in manual mode but since I am a very ordinary pilot I like to use assisted flying modes. I changed to Fly By Wire mode and due to a APM setting (that I had to set) the autopilot had reversed the elevator sending it crashing into the ground. This snapped the plane in half and bent up the fuselage. Thankfully this durable foam returns to shape when you put it in boiling water and the pieces can be glued back together, reinforced with carbon fiber and fiberglass tape. Now I follow the suggested checks in the APM:Plane instructions more closely.  I’ve had no crashes since but have landed in mud which can be painful to clean out of the landing gear.

Fuselage post crash on maiden flight
Fuselage post crash on maiden flight


Putting together this UAV I have learned how all the components of a UAV fit together, challenges faced by the commercial suppliers, and a better understanding of the enormous potential on offer. I think the biggest challenge is not the UAV platform itself but collecting high quality consistent data that can be quickly processed and given a useful, profitable application. The setup I have discussed here not including laptop or the countless hours of time comes to about AU$1200. Obviously for mapping large areas on a consistent basis, a commercial UAV would be preferred or even essential.

UAV Finwing Penguin: Clocked up some hours
UAV Finwing Penguin: Clocked up some hours

12 thoughts on “Budget UAV for aerial mapping: my experience in agriculture”

  1. Hi Ben, I saw you had taken your ortho image and made a nice ‘online’ pannable/zoomable map. I’ve played around with openlayers before, but I was wondering if there was a specific software package you used that could easily generate the tiles at different zoom levels?




    1. Hi Curt, I first made a tile set using TileMill. I then uploaded these to a VPS with Tilestream installed. Leaflet API is used to display the tiles. I plan to work a bit more at serving data as time permits.
      gdal2tiles is something else to check out. I discovered it after I set up my server. This software is meant to do all the work for you.


  2. Hi Ben,

    gdal2tiles looks like it works well if you can get your data into a single geotiff. I’m still trying to figure out if there’s a way to do image stitching that costs less than $3500/agisoft. I’ve been working on my own code with partial success, but I’m not yet 100% fully happy with my results.


  3. Hi friend,

    Good day! This is Grace from LPD power.

    Sorry disturb you.We are main making RC Li-po battery, especially high capacity:
    LPD10000mAh/6S, LPD16000mAh/6s and LPD22000mAh/6S are our popular models.

    Something more about our Aerial photography/UAV /RC Heli battery:
    1:We have a good competitive price and high product quality .

    2: Long time of endurance and stable discharge.

    3:Light weight / high safety / cycle life > 500 times.

    4: Fast delivery time.

    reply me to talk details if any interests.

    Best regards.



  4. Hey Ben

    I am new to UAVs and the world of R/C, I am a photographer by trade. I bought basically the same setup as you so I could take some aerial landscapes. I am wondering how you hook up the servos from the penguin to the pixhawk. From what I’ve read, the servos should be channel 1-4 on the MAIN OUT, but I also read that the pixhawk doesn’t power the servos. How do you get it to work? I’m confused and don’t want to fry anything. Please email me if you get a chance. I would greatly appreciate it.


    1. I just plug servos straight into Pixhawk as in the online docs with no issues.
      I used the 3DR Pixhawk power supply. I’ve never fried anything. Bigger risk is crash 😉


      1. hey Ben
        thanks for the response. I thought that was the case but then on the px4 site it said that it does not provide power for servos. ( I guess that may be for extras). Anyway I finally started building the penguin and am wondering how you center the servos? did you just eyeball it? or is that something that I can adjust in mission planner once I get everything put together?

        I feel like I’m in over my head. especially when I look at the r/c radio/transmitter and wonder what all the knobs and switches do…
        I’m anxious to get this thing up and running.

        thanks for help


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s