1h:15min of flight time for Airbotservices'X4 equipped with brushless gimbal & fullHD camera on its 12mm carbon fiber payload rail system.
Attempts have been made reaching more or less 2 hours of flight time on "empty" frames: such crafts carry the absolute bare minimum required to minimize weight, meaning: they do not carry payload(s), and/or do not have extra electronics for autonomous/waypoint capability and/or do not carry optional bi-directional command & monitoring telemetry.
"X4" is an Airbotservices experiment UAV attempting to push the limits of flight autonomy of a "practical" drone : we tried thus something different with a fully equipped drone (BG & full HD camera), in addition having all APM/Arducopter capabilities. It carries the following hardware equipment:
- Airbot's payload rail system composed of two parallel 12 mm carbon fiber masts
- Airbot's 2-axis brushless gimbal (Airbot's world's lightest at 45g only) stabilized using an Alexmos controller
- full HD Mobius Camera
- 3DRobotics' Pixhawk (APM Arducopter)
- 3DR Robotics real-time telemetry (bi-directional TX/RX)
- GPS (M8N) and second external magnetometer (in addition to internal Pixhawk's magnetometer)
- 3DR power module powering Pixhawk and used for current and voltage measurements
- Airbot's LiIon 23100 mah 4S battery
- Power circuit/cabling for the BG
The frame base is built inspired by Forrest Frantz's "CF round tube" constructions techniques (for an extensive discussion and how-to guide on these innovative techniques, read post here).
Some Observations , lessons learned and potential improvements:
- Weather status: 50% of time without wind, 50% with ~20km/h breezes
- Initial battery state : charged at 4.18V at beginning
- Brief Loiter (un)stability hickups. APM version 3.2.1 was used , loiter mode for 95% of the flight. The weather conditions were relatively calm but still with wind bursts once in a while. Even during "no wind" periods of time, "loiter" was having some unexplained, brief (10 seconds or so) strong twitches (or spasms) as if the quad was fighting very strong (but unexistent) winds. I repeated the same experience on Airbotservices X8, totally different craft, same observations. The three factors that impact loiter's performance (low vibrations, low compass interferences, good GPS performance) were all excellent on X4 & X8:
- (Vibrations less than +-0,2g;
- External Compass with very low offsets and far from EMI;
- More than 8 satellites and HDOP<2). M8N on X4, 3DR LEA on X8 (no GPS HW suspicion)
- EKF was enabled.
P Loiter and rate P Loiter were tested with lower values (0,7 and 0,8 and 0,9) than defaults (=1) with no sensible improvement on loiter's stability. 0,7 value resulted in a bigger unstability versus the default value.
Any observations on what could be wrong, analyzing the log file posted below, are welcome....
- Pixhawk and/or APM Arducopter's altitude management : should be way better than what it is. I already posted a few times about this, like here, and other people have confirmed my observations. This 1h15 flight really shows how bad altitude management is, with measured altitudes (displayed in MP) that are two or three times higher than real altitude (after a few minutes). Altitutde drifts is a nasty problem for (long) auto missions and I hope developers will now be convinced this should be set in the high priorities in the list of change requests for future releases (further, according to a user who got some feedback from 3DR, it seems 3DR does not consider an altitude drift issue even exists; cf support forum link above). I know Randy has confirmed an altitude EKF improvement about this in 3.3 but I'll let him chime here as I might be wrong. There are two potential different drift sources (or both may also even be concomitant), and I do not know which ones are at play : either an hardware issue due to Pixhawk's electronics (baro chip and/or how it is electronically exploited); either a software issue (different sw were used in this test: APM /w EKF , Mission planner). To finish, with a detail on altitude problems, APM documentation wiki needs a small correction as it states that altitude is calibrated to zero when plugging the battery when it fact, in version 3.2.1 anyway, it is calibrated (and reset to zero) when arming.
- Mechanical vibrations fatigue. As can be observed in the attached video of this blog, Mobius camera detached itself (pitch mount) due to mechanical vibration fatigue. Mobius cam was simply snapped on with a plastic cap. Similarly to loctite to maintain screws tight against vibrations, adhoc glue should have been used to secure the plastic cap "snap on" mechanism (careful, never to use loctite on plastic parts as it make it brittle).
- A very positive and conclusive result for "screwless" frames. Airbotservices X4 is built screwless, only using glue between parts, including the 12mm carbon fiber rail system that carries the heavy battery. Although this craft has been flown many hours (each time more than one hour at a time), none of the glued parts have budged nor cracked. Use of glue is key to get a light craft and get such performance (after all, Airbus and Boeing evolved too from rivets to glue in order to lighten their planes). I did not do any structural resistance measurements but I would bet that such frame is way stronger than any screws & bolts alternatives (Forrest might chime here as he 's the expert on the subject).
- Final battery status : voltage =3.3V per cell (plugged in, motors stopped) and =3.1V (under charge, motors running). A LiIon cell is fully empty at 2.5V per cell. Stopping at 3.1V, 20% of energy remained in the battery. It is OK to drain a LiIon battery down to 2.75V per cell under charge (=11V for a 4S battery). Extending the flight with a few more minutes was thus possible (better be careful not to damage the battery).
Mission planner's log file is downloadable here.
There you have it, a fun journey in extreme flight duration territory,
Cheers,
Hugues
Comments
Hugues,
congrats!
Regarding the Brief Loiter (un)stability hickups:
These could stem from the M8N (missing samples) - or something related. There are several discussions but at https://github.com/diydrones/ardupilot/issues/2097 you can find some summary/link collection. Not sure if your hiccups are similar to these twitches but the logs should tell. I'll have a look the next days.
Regarding the Pixhawk and/or APM Arducopter's altitude management:
some discussion at: https://groups.google.com/forum/#!topic/drones-discuss/idiv0aHJA-0 Holger is working on a patch: https://github.com/hsteinhaus/ardupilot/tree/gps_qnh
Cheers,
Thorsten
Really nice. And in a hefty wind. So impressive.
I agree that alt-hold is amazingly good, far better than i could ever guess. But on the other hand, the algorithm is generally the cause of run-aways and short-term drift. Can it be improved? If it can, what is the lightest weight approach For example:
- a ground station establishes the baseline for longer-term shifts but probably means adding another receiver to the ship.
- a software approach adds no weight but what improvements are left given the sensors? A lot? Very little?
- would two baro sensors on different sides and ends of the board or one on the gps/compass board prove helpful?
I'm less concerned about long-term drift (you can always slowly correct with throttle). More concerned about the short-term stuff we see (10 minutes). Is the chip heating up and changing the pressure reading? Does the chip need to be temperature compensated? Is it already temp compensated? If so, is the adjustment flawed?
I am using 3.2 and have none of the loiter issues you seem to be having. Every once in a while in an urban or GPS shaded area the UAV will move a few feet because of a bad coverage or reflection of a gps signal, and then move back to its original spot. I have even been able to replicate the issue by purposely shading part of the horizon view and replicating the same response. Getting a few feet higher usually solves the issue for me. Or moving away from an object. Shading does not occur just when an obstacle is over the UAV. The way your quad is moving around is what I see if the wind was blowing 15-20 knots and gusting! Those bigger props turning slower cause all sorts of odd vibration issues that may not show up on logging because of the wave lengths. You obviously have some pretty good vibrations if your mobious mount fatigued and failed.
Nice copter!
Thx for your feedback:
@Rob, I woud agree with you if the drift would happen on a hour+ period of time. But it happens in 5 or 10 minutes which is a regular flight time (you can experience it on a bench with perfectly stable ambient pressure). Furthermore I think (although it is too late now to gather evidence a posteriori) that in previous 3.1.x versions, i never noticed such drifts (I did 20 min flights at the time maintaining a very coherent altitude display between mission planner and actual alt). Felix gives what could be a potential sw/hw solution : a ground reference , a bit like RTK for GPS ?
@Evan, thx. Motors are TMotor 3508, props are TMotor 16", ESC is a quadro 20A. The weight of the drone alone without battery (with motors, electronics, props, etc) is about 700gr. The weight of the battery is around1400g (with cables and protective enclosure).
@Cala, thx! I guess the Alien underground base did not impact my magnetometer this time. By the way, if you remember your hypothesis about my bad loiter drift. You were right but not for the good reason : indeed it was due to GPS, but because of a failed GPS+compass hardware module. It gave a good HDOP, good mag calibration, but bad result. I only found it by trial and error, replacing each pieces : cables, modules, etc.. It took me three days to find out grrrr.
CONGRATULATIONS HUGUESSSS!!!!! :D :D :D, I have envy ;) , past two days I was thinking what is about this long endurance guys proyects?; I love long endurance "real" flights.
Great achievement! Congrats!
Can you share specs of motors, ESCs, propellers used?
What is the weight of the overall drone and of the battery alone?
How about a barometric pressure sensor at the ground station?
In your discussion about altitude hold performance, have you considered the very real effect of barometric pressure changes over such long flights? Any ideas how this could be solved in hardware or software? You're talking about an accuracy in the range 0.01% if you have altitude drift of even 10m.