I have just bought the ArduPilot Mega 2560 Full Kit... plus the Triple Axis Magnetometer HMC5883L. I should have it built over the weekend.. then i'm off to a my mates machine shop, and i'll make the splitter plate for the lower frame onto which i am going to fit the Ardupilot. the magnetometer i'll put on the tail as suggested. I am going to use my X-cell Razor 600E. For those that dont know its around the 50 size nitro heli.
Do i need to buy any other sensors i.e. the Sonar... i can fly a helicopter all day long but this is my first time flying one with stabilisation so any tips would be gratefully appreciated.
If this works well then i am going to try and use it on my x-cell gasser. i can get up to 20 minute flights with this. But i think for the time being a battery 600 is the way to go.
i'll post some pictures when i have it all together.
That was alt hold. I assume the "next WP alt" stands for the target altitude? I switched around line 3600 to alt hold, when the "next wp alt" jumps up, and the "alt hold int" starts building up. What is "alt hold int"? The alt hold I term?
In between around line 4200 and 4800 I switched alt hold off, after that on again. The second alt hold was much better.
can you post your log file so i can have a look?
I believe my alt hold P gain is too low as well. If "alt hold int" is the I term, then in my first alt hold test, the I term builds up strongly because the real altitude is above target one. After a while the heli starts going down and overshoots. Before crashing into the ground I stoped the alt hold -> that is when the I term suddenly goes back to zero.
Now the tricky question: What to trim? the alt hold P or the throttle rate P?
I will be testing again tomorrow, this is the first time with this new code. So i'll be learning too :)
Randy or Robert should be able to help as they have tested the loiter on this code.
No, what you're looking at is Nav Lat I, not P. I need to see the P.
In the absence of seeing the proportional gain, I'd say the the P is too low and/or I is too large. Or both.
Set I to zero, then try again. Always start with I zero. Tune in P, and then start tuning I. Unless the process is VERY slow (it's not in this case), with the ability to see live P and I values, you can't tune P and I together.
Is this still 2.1.0r? The jumpiness is weird, seems like D term, maybe but there is not Dterm in that code? Or it could be a bug. I don't know a lot about 2.1.0r.
Ok, here's what I see. When you engaged AH, the target alt was set at your current alt. Notice how the top of the green step hits the red line perfectly. This is normal. Unfortunately, you were riding when you switched. Now the AH controller has to stop the rise. Here's where your problem starts. Again, I think P is too low, and I is too high. So it keeps on rising and winding up the Integral until it starts to fall. Then it falls too far and you switch out of AH.
Then you engage AH again, and you weren't rising or falling, and it does a nice job (or maybe just luck) until it starts to fall a bit, then Int winds up again, and it rises, then falls...
How to tune AH in a few works:
Set AH P and I to zero. Set Throttle I to zero. Start working on Throttle P. All this does, is control the rate of ascent/descent. You want to tune up P until it starts to oscillate/shake, then back off a bit, maybe 10%. At this point, it should lazily hold steady in the air, but it will not correct errors! If it gets low, it will stay there. What you are looking for is the RATE of ascent/descent. It should try to hold against wind gusts, etc. But if an error occurs, it will stay.
Now, I think, leave I term zero. Tuning the nested in I term will be hard/impossible.
Now start tuning AH P. Tune it so that it is not wildly swinging up and down, but corrects Alt errors sharply. You might be left with small errors, that's ok. Then work on the AH I term. This is what will "snub" the heli to the right altitude. This is also what will help the heli hold alt as the pack drains and the headspeed falls.
This is the first time i have seen I tuning, it used to just be Nav_lat against Nav_error.
Ok guys, my daughter is sick, so I'll probably stay home this weekend. I can probably do that Skype call tomorrow morning if you want. Say, 9AM EST, 2PM Grenwich?, 9PM Tokyo? Let me know.
2.3.1 is looking really good, that's what I plan to try next time I fly.
Robert, I agree with your interpretation. I dialed the P terms quite down. I will follow your advice for AH tuning, sounds good.
For the Loiter would it be similar? Start tuning the RATE with the Nav WP loop, then go on with the Loiter loop?
Yes, similar for loiter. Always work from the inside out, and start with P while I is zero, then work on I.
But, I don't think you need to touch Rate, as it is not used in Helicopters. Our stabilize routine goes direct to the servos without going through rate. This is done largely because we won't need rate stabilization for helis as they are aerodynamically stable. *Though I do wonder about flybarless.*
But once you get Stabilize to be good, I'm honestly unsure about tuning NavWP or Loiter first. I have to wrap my head around that.
Sorry to hear that robert. hope she gets better soon.
I can do skype around 2PM. no problem.
I'm free at that time..i think Mark Colwell will join us too.