Landing big heli in Althold mode

Recently I landed a big heli in althold mode. Until now I have been landing in stabilize mode only. However it did not go well as soon as it landed the heli gave a jerk as if in stabilize mode the pilot gave sudden input to the throttle. I have attached the log. In the log you can see that the swash servos do have sudden motion immediately after landing. I cannot figure out why is this happening. One theory I have is when it lands and the main rotor power is cut then the change in air pressure near the autopilot confuses the alt hold controller. But my 50 size nitro never misbehaves like this and it able to land perfectly fine in althold mode. I was wondering what other heli enthusiasts think about it and if it is possible to fix it. I will try this a couple of times more to see how it goes.

alt_hold_land.log.zip (772.2 KB)

That’s what it does. I do not recommend landing or taking off with any helicopter except with Stabilize or Acro. It is way too dangerous to allow the autopilot to have any sort of control other than basic stabilization for a FBL head with a big heli that close to the ground.

That is just my opinion and others may claim they “do it all the time”. But they just haven’t been bitten yet. In the world of full-size it is illegal to have an autopilot engaged under Part 121 or 135 in any flight profile that places the helicopter in the danger zone on the H/V chart in the flight manual. I would suggest not doing that with RC too. Especially with a 800. The thing has more rotor area than four 550-class choppers. Using an autonomous landing, the pressure buildup under the main, having the landing col min set a tad too high, and the “bump” from the circulating currents of the induced flow in the rotor can even cause the autopilot to think it has landed and shut it down in mid-air. Usually with catastrophic results because the autopilot is a little brain-dead when it comes to collective management in any altitude controlled flight mode.

When it comes to flying a 800 or larger, how do they put that? - you ain’t in Kansas anymore. Treat it with the respect of a full-size one and you’ll be just fine.

@Sunit_Pal it looks like you have your front elevator servo hooked to SERVO 1, right aileron to SERVO 2, rear elevator to SERVO 3 and left aileron to SERVO 7. How are you doing the mixing for that? Are you able to get the mixing so you have a “pure” swash response on aileron and elevator input, with no change to the collective? Or are the servos fighting each other 180 degrees across the swashplate?

I was thinking on similar lines so until very recently I avoided landing in alt hold mode. However I was thinking of making the heli complete autonomous from takeoff finish mission, come back and then land. For this landing in althold seemed like a first step. I think we need to think it through perhaps aided by lidar and a landing sensor in the landing gear we can accomplish this.

Yes I am able to get pure swash response just like one would with 3 servos. The following diagram shows how the servos are connected to the swash when looking form the top. The channels used are 1,2, 3 and 7.

I posted my code a while back. I have to find time to get all this stuff in github for now you can see it here.

This should be interesting

This is different than taking off or landing. As a pilot you don’t want to manually fly into the avoid region of the H/V diagram either.

So I can’t find where @ChrisOlson mentions the issue with taking off in althold where the heli shoots up in the sky which is how I think he described it. Did you adjust the PILOT_TKOFF_ALT parameter. I have mine set to zero. I don’t see the issue you describe nor the one on landing that is described in this thread. It may have something to do with the H_LAND_COL_MIN but I am just guessing. I’m sure there is some set up situation that may be causing these issues. We just have to look at the data and understand what’s going on and then fix it or give better guidance for the set up. I don’t like the idea of just not using a feature because we believe automated flight is not good enough for takeoff and landing. If it is not then we should figure out why and fix it. There is nothing special about a helicopter’s flight characteristics that make it any more difficult to automate takeoff and landing.

I don’t like the idea of a gear switch. LIDAR might make it accurate enough. But you’d better tune the headspeed and test it with whatever landing gear you’re using. If a big heli goes into ground resonance with the autopilot under control that heli is gonner. A human pilot can jump it off the ground and get it out of there.

It does that in auto, not alt hold. Regardless, I don’t like it. There is no in-flight checks of the attitude controller, no in-flight checks of the GPS, navigation and compass, and double check of the power status and headspeed before you turn it loos in Auto if you let the autopilot do it. All of which are very important checks before you turn a 35 lb helicopter over to autopilot control.

I guess I don’t care if other people want to do it. I flat out refuse.

And that is fine. But if there is some technical issue that we need to resolve then there should be an issue posted in github with a log file that can be analyzed.

@Sunit_Pal I will take a look at your log file as soon as I can.

There is no technical issue. It’s just the way the autopilot does it. It takes off and climbs at whatever you have your vertical speed set to for WPNAV. It’s not smooth like a human pilot. If you have your WPNAV’s tuned up for high-performance flight, it’s downright scary with a big heli with a lot of power. It’s a rocket and if you have your WPNAV_ACCEL set to 980 it will accelerate at 1G with the throtlle wide open and the collective maxed right out. So have to use values around 500-600.

I prefer to take off smooth with me flying, do all my checks, line it up, use a spline curve into the first waypoint to control acceleration, and use the Channel 6 tuning to dial up the WPNAV_SPEED a bit at a time to mission speed. I use the same procedure in reverse on approach - disengage the autopilot before it gets to the final waypoint and take over manually. Because can’t let the autopilot bring it to a stop by itself either. It’s way too dangerous.

If you set the WPNAV_ACCEL down so the autopilot isn’t as rough with it, then it won’t hit waypoints at 27 m/s.

The autopilot is basically like a student pilot - let it fly the heli, but don’t let it do anything that requires precision

The issue is the nav controller. It was never designed for high-performance aircraft. With enough experience you learn how to fly the system, how to flight plan for it, and how to work around it.

You will see the issue there is the huge pressure buildup under a 6 foot main with a heavy heli, causing the altitude estimate to vary (I’ve seen it at 5-6 meters before in no wind). As soon as you shut the heli down the altitude goes from negative relative value to normal. The bigger and heavier the heli, the worse it is with a barometric altimeter.

This sounds like a good technical argument to me. If you have the data on the takeoff to show the aggressive behavior. All of this is great support an issue on the Auto control behavior for tradheli. We teach our test pilots that the autopilot behavior should not make the crew uncomfortable. I think the same applies here.

1 Like

Regarding Auto Land at the end of RTL I never had to abort any Auto-landing with my TR700 since I had the Heli equipped with a Lidar so far. ( more than 50 RTL’s with a Lidar )
No incidents yet even with several previous FW.
But I understand and appreciate your view, Chris.

What I am saying here is, I feel very comfortable with the Lidar-unit attached for Auto-Landing. Auto-takeoff I never do, because I want to see and feel the Heli during takeoff before

I switch to Auto.
Auto-Landing with Lidar unit only - for me.
There is a new Lidar unit in the mail for my RJX ( Sonar at the moment). That Heli let me down few weeks ago with 2 GPS units. The RJX is flying with 1 GPS now and the last RTL of this year was perfect.The photos are out of my head-cam video from that flight. One frame before take-off, the other after RTL-auto land.
Look at how accurate that was with one old 3DR GPS and an old Sonar(7m-max), but replaced soon with Lidar (40m-max)
Happy New year to you all..

If you want to use auto landing with a larger heli I think LIDAR is the way to go. It will help prevent the in-air shutdown issue before it lands, and help prevent the collective “surge” when the pitch drops off and the autopilot thinks the heli has suddently shot 6-8 feet in the air.

Personally, I’ve just learned not to trust it because I’ve seen to many anomalies, don’t trust it to handle a big heli in the wind, and would rather fly than fix wadded up helicopters.

The nav controller was designed for slower speed flight. It has a “leash” that pulls the heli around the corners. The faster you go, and the lower you set the WPNAV_ACCEL, the longer the “leash”. And the further it gets from hitting the waypoints. To shorten up the “leash” you have to turn up the WPNAV_ACCEL. And then the system does not have enough “look ahead” to handle a big heli gentle. As long as it’s flying and can make only minor changes to speed by flying spline turns, it’s fine. But let it come into a waypoint where it’s going to stop and it’s a disaster. I use some “tricks” in flight planning to get the system to slow it down before it gets to any waypoint where it has to come to a stop. I’ll fly an approach with waypoints set close together at progressively lower altitude to force it to slow in order to make the altitude target. Then disengage just before it hits the final waypoint and take over.

Been doing it that way for ages, and it’s basically the only way you can fly a heli at anything beyond ~15 m/s with the WPNAV_ACCEL turned up for high speed flight. The system was designed to brake multi-rotors and it has the same problem we discussed on the New Loiter thread with the braking part for heli’s. It just flares the thing, dumps the collective off to prevent a climb and slams on the brakes at the full acceleration limit you have the WPNAV_ACCEL set to. I think you can imagine the problem with that if the heli is coming in at 60 mph and the final waypoint calls for it to stop and go into hover. It ain’t pretty.

Chris,
It is important where to place the Lidar under the Heli without interference and bad vibrations. Maybe I am lucky. I had a Lidar unit only under my TR700 yet.
The sonars were not that reliable but are best above concrete. My experiences.

Bill,
I can confirm the aggressiveness to take off in Auto mode. 2 years ago I did a job and the TR700 took off in a second or two to about 20 meters above ground. -FW3.3- I still have that on video. If you really want to see those seconds I can trim that off the video and put it in Dropbox for you to view. Very scary. Let me know. I have no logs stored of that.

Eventually, we may get the L1 Nav Controller for plane. Which will be better. But it has to be modified for multi-rotors some. Even a Do_Set_Speed command in a mission is dangerous with a helicopter. If it is going 27 m/s and you put in a Do_Set_Speed to drop it to 20 m/s it will cross the waypoint, execute the speed command, it suddenly violently flares and decelerates to 20 m/s at the full acceleration limit of what you have the WPNAV_ACCEL set to.

Like I say, it takes experience with the system to learn what you can let the autopilot do, and what you can’t. I don’t have any logs either. I’d have to go back hundreds of flights to find one, because I don’t let the autopilot fly the helicopter in anything but steady cruise flight.

@Sunit_Pal It appears to me that this sudden change in the collective occurred when you switched off the motors. The land complete flag had not set yet however the motor interlock disabled event occurred right as the collective jump occurred. Is this how you remember the event? Do you recall switching off your motors when this collective jump occurred? I haven’t figured out why yet but I’ll dig a little more.

@Sunit_Pal After doing a little more digging, i’ve determined that it is the mode switch (switching motors off) that is causing the sudden increase in collective. After you land, the altitude controller has a decreasing desired value that reaches -1395 just prior to the motor interlock disable (switching motors off). The code changes the pilot requested climb rate from the pilot requested stick based value to the land_speed parameter descent rate. This rapid change from -1395 to -50 is what I believe is causing the change in collective pitch, not the change in attitude do to rotor wake pressure affecting the altitude. I’m not sure why this is more noticeable on large heli’s and not all heli’s.

@bnsgeyer does the collective change at engine shutdown look like a positive pitch change, or negative pitch change to you? It looks like a positive pitch change to me. The baro altitude suddenly rises from about -2 meters or so to a positive value of about 1.5 meters as soon as the weight transitions from main rotor to skids and the blades stop making lift and moving air. Since this is a gasser, the engine is not actually shut down at that point - it just goes to idle and disengages the clutch. I think it is confusing the altitude controller from the pressure under the main rotor suddenly going away, and switching the throttle to IDLE is coincidental.

The autopilot will do this same identical thing in flight in any altitude controlled mode if you shut down the engine. It suddenly increases collective pitch and stalls the main rotor. I’ve done it before. In Stabilize mode, and you can try this, it does the opposite. Hover your heli at like 2 feet. Shut down the throttle. The autopilot will instantly slam the heli into the ground instead of letting it settle gently as the rotor speed bleeds off. I’m pretty sure I got logs of this phenomenon, I’d just have to think about which heli it was the last time I tried that and find the log. Without moving the collective lever in Stabilize it suddenly drops collective when you switch off the throttle. But I still think in Sunit’s case it increased collective like I’ve seen it do in flight before in Auto.

It is producing a positive collective change because instead of commanding a much larger descent rate (-1395), it goes to commanding a much slower descent rate (-50), thus there will be an increase in collective. I’m telling you that the code does not use the change in Baro Alt to determine the commanded collective input once the user disables the motor interlock.