Hello ArduPilot Community,
I’m currently working on a project for my master’s thesis where I aim to automate exposure measurements using a quadcopter. The basic idea is to have the drone fly in a grid pattern over a predefined area (e.g., 25x25 meters with 1-meter steps). At each grid point, the drone should hover and perform an exposure measurement using a custom sensor with an I2C interface.
I’m considering using ArduPilot for this task, and I wanted to get your input on whether this would be a good option for my use case. Here’s what I’m thinking:
- Flight Pattern: I plan to use ArduPilot’s waypoints feature (Planning a Mission with Waypoints and Events — Copter documentation (ardupilot.org)) to define the grid pattern and control the drone’s movement between the measurement points. The drone has to fly at a constant altitude of 1.5m.
- Custom Sensor Integration: For the exposure measurements, I’m thinking of using a Raspberry Pi as a companion computer (Companion Computers — Dev documentation (ardupilot.org)) to interface with my custom I2C sensor. The Pi would handle the communication with the sensor and trigger the measurements when the drone reaches each waypoint.
My main questions are:
- Is ArduPilot’s waypoint navigation precise enough to handle the 1-meter grid steps reliably?
- Has anyone here integrated a custom I2C sensor with a companion computer like Raspberry Pi? Any tips on how to best handle this setup?
- Are there any potential challenges or limitations with this approach that I should be aware of?
I already did some research and found out that I will need a downward-facing rangefinder to maintain a constant altitude and an RTK GPS module to achieve the necessary precision, reducing the GPS error to the centimeter range.
Would an RTF drone be sufficient for this setup (including the integration of a companion computer), or would an ARF kit be more advisable?
I should mention that I have no prior experience with flying or working with drones.
I’d appreciate any advice or suggestions you might have. Thanks in advance for your help!
All is possible. But you do need to spend some time configuring the vehicle parameters to meet your high accuracy needs. Use this from the very beginning!
2 Likes
I did it without using a companion computer, BH1750 ambient light sensor. It required adding a new binding as #27287 wasn’t available when I did it.
1 Like
Thank you very much for the responses.
I have one additional question. If I buy an ARF kit and assemble the components myself, I understand that I’ll need to tune the drone.
However, if my sole objective is to have the drone fly autonomously—meaning I upload a mission with waypoints, and the drone automatically takes off, completes the mission, and records the exposure measurements—do I still need an RC controller?
Additionally, is tuning still necessary if I don’t plan on manually flying the drone at all?
Thanks again for your help!
- Because you want to fly autonomously you need to calibrate and tune it very accurately.
- To tune it accurately you need a RC transmitter, even if you will not use it later.
So it is the exact opposite of your gut feeling!
Avoid wasting your time configure it correctly once, instead of crashing and doing trial and error.
The more steps you skip the worse the results.
2 Likes
@amilcarlucas I have one small question.
In this post How to methodically configure and tune any ArduCopter - Blog - ArduPilot Discourse
you mention in section 1.1: current monitoring and voltage monitoring, what exactly is meant by these, are there external components that do this? I assume with voltage monitoring you probably mean this Battery Monitors (aka Power Monitors/Modules) — Copter documentation (ardupilot.org) but what component type is meant with Current monitoring ?
Most of those Power monitor modules measure both voltage and current.
1 Like
Thanks for the swift response!
I’m trying to select the right flight controller and compatible components (GPS, rangefinder, etc.) for my setup, but I’m confused by the information I’ve found so far. I would appreciate advice on the following:
1. Flight Controllers:
I see that the ArduPilot wiki frequently mentions Pixhawk, but I came across a post on this forum that mentions Pixhawk 2.4.8 might not be a good option because it’s a generic version from unknown manufacturers and the original is not made anymore. I want to make sure I’m investing in the right hardware.
- What is a recommended alternative that provides the reliability needed for research-grade applications?
I’ve read here that STM32 H7 processors have enough power to run ArduCopter firmware without restrictions, but when I checked the Matek H743 SLIM V3 (which uses the STM32H743VIH6 processor), I found that many features are unsupported according to the ArduPilot binary features page.
- Why does the Matek H743 lack so many features despite using the H7 processor?
- Should I focus on H7-based flight controllers, or are there better options for my specific use case?
2. Choosing the Right Components:
My project requires:
- Precise waypoint navigation, which likely means using RTK GPS for accuracy.
- Altitude hold at about 1.5 meters, potentially using a rangefinder for more reliable altitude measurement.
I’m currently leaning towards the option of buying an ARF kit and adding some components myself. I was wondering if it’s better to:
- Choose the flight controller first and then look for compatible components (e.g., RTK GPS, rangefinders), or
- Select the components first (RTK GPS, rangefinders, etc.) and then find a compatible flight controller?
3. General Advice:
- Are there any other hardware considerations I should keep in mind when choosing a flight controller for autonomous missions with custom sensor integration?
I would greatly appreciate any recommendations or suggestions regarding reliable flight controllers and component compatibility for this kind of project.
Thanks in advance for your help!
This is what the custom build server is for, a lot of the disabled features are niche stuff that few people use.