You wrote:
"At 2 minutes you see the VPS and IMU heights are about the same. At 5:36 there's a large error as IMU shows 26' and VPS shows 1.3'. This error in the VPS initiated a landing, at a very dangerous location."
The IMU height is set and recorded as zero when taking off. IMU heights are measured by the barometric altimeter, always relative to that zero height of the takeoff location. The IMU height can even display as negative if the drone descends, for example, to a point lower than the takeoff location such as when flying down into a valley. Unless you're only ever flying your drone over a totally flat landscape with no obstacles, the IMU height is NOT showing the drone's actual height above ground, only it's height relative to the initial takeoff location. If you make your drone climb to 30', then fly at that constant height in any direction, the IMU height will show a constant 30' height regardless of whether the drone is flying out over a descending valley or smack into the side of an upsloping hillside.
The VPS height instead is measured by the infrared sensors on the belly of the drone, bouncing an infrared signal off any surface detected below the drone. This is a very accurate measure of the drone's actual height above any feature detected within range of the VPS infrared sensors. At the moment of takeoff, the VPS height and the IMU height will equally show the same zero height. ONLY if the landscape is completely flat with no obstacles, the IMU height and VPS height will continue to agree with each other displaying equal heights, unless the drone climbs to a height exceeding the range capability of the VPS infrared sensors (approx 30'), after which the VPS height records as "N/A". That means Not Available. This is not an erroneous or defective reading. It's merely the effective range limit of that sensor.
Although the VPS height infrared sensors give a very accurate measure of actual height above any obstacle (within that 30' effective range), they don't seem to play any active role whatsoever in the reaction of the drone, except during landing or if an obstacle is detected within ~2' of the belly of the drone.
Now here's where your problem comes in, as shown in your two flight log images. You seem to think the VPS is in error because it's not showing the same height as the IMU height. Let's say you take off from your driveway, then fly the drone over the roof of your house. The VPS and IMU heights will only continue to agree from the moment of takeoff until the drone crosses over the edge of your house's roof. At that point the IMU height is still displaying the barometric height difference relative to where it started from on your driveway, no matter how close the drone comes to actually touching the roof. But the VPS height will suddenly cease showing the height above driveway, but now show the actual clearance height between the drone and the roof. And if that VPS height clearance is less than ~2ft, the drone will climb all by itself to increase the height clearance, similar to when you have the drone hovering in front of you but move your hand up close underneath it.
You wrote: "At 5:36 there's a large error as IMU shows 26' and VPS shows 1.3'. This error in the VPS initiated a landing, at a very dangerous location."
Immediately before that moment, the IMU shows 26.6' and the VPS shows N/A. Let's first look at just that. The IMU merely knows the drone is 26.6' higher than its takeoff location. As far as the IMU knows, the drone may have flown off the edge of a steep cliff or it may be hovering inches above your roof. The barometric altimeter has no way of telling the difference. It only ever knows how high it is relative to the initial takeoff location. The VPS however shows "N/A", which means it's out of range of any obstacle. So presumably the drone is more than 30' above any obstacle at that point, i.e. you've flown it off a high cliff and the VPS can't see bottom.
Suddenly at 5:36 the IMU still shows the same 26.6' whereas the VPS shows only 1.3'. The IMU has no way of knowing that you've flown the drone over the branch of a tree, but the VPS infrared sensor suddenly detects an obstacle closer than 2' within its underside and commands an automatic climb to avoid hitting that branch. That data of your flight log image shows something like that happening as the IMU height immediately starts increasing. You see the drone start climbing all by itself, maybe heading for another branch overhead, and you pull the throttle stick down. The drone reacts as it is programmed to do. If the VPS detects "ground" within 2ft of its underside while you're holding the throttle stick down, it commences autolanding.
Rather than posting only snippets of your flight log, if you post a direct link to the entire Phantomhelp report, we could get a better look at what actually happened. I had a similar incident with my Mini-1 which suddenly and mysteriously announced it was landing. Luckily it was from a height that gave me sufficient time to react and cancel the landing. With the help of people much cleverer than me, the flight log was diagnosed to show that the VPS sensor had detected "ground" closer than 2' to its underside because of the mist rising from the waterfall. As I was holding the throttle down at the time with the drone descending through the mist, it interpreted that as a request to commence auto-landing.
Post the link to the full Phantomhelp report and I'm sure someone will help figure out exactly what happened in your case. Actual defects are extremely rare. Misunderstanding or misdiagnosis is much more common.
|