When it’s a little windy the helicopter shakes a lot and I’m afraid I will loose it when te wind is too strong at some point. Also when flying straight forward in loiter mode it seems like its loosing altitude and becomes unstable.
RC tuning the P and D gain was as success, but…
I’m breaking my head how to interpret the data from the AP and to translate this into a valid I gain, IMAX, and ILMI. In the graph I see a discrepancy between the Roll and DesRoll.
I also can’t figure out where to find the the PIDP (Proportional/Integral/Derivative gain values)
In the first part of the log I flew the helicopter in stabilize mode straight forward at maximum speed a couple of times as described in the WIKI.
What I also can’t understand is this part in the WIKI:
It is recommended to set the [ATC_RAT_PIT_I] gain equal to the [ATC_RAT_PIT_VFF] gain and the [ATC_RAT_RLL_I] gain equal to the [ATC_RAT_RLL_VFF].
But in the initial tuning parameters they are different from each other ATC_RAT_PIT_I = 0.1 and ATC_RAT_PIT_VFF = 0.15 While ATC_RAT_RLL_I = 0.1 and ATC_RAT_RLL_VFF = 0.15
So it looks like the wiki is contradicting itself?
Can someone with experience please take a look at my log file and tell me what values I need to put where?
It’s very difficult to understand it all when your new to this like me with so much values and new terms, I hope autotune will be released soon for the traditional helicopter firmware.
As this is my first Arducopter tradheli build I do not feel very comfortable to load an experimental firmware just jet.
I’m a little afraid for the 600 heli, because it can cause a lot of damage or injuries when it becomes out of controll.
Right now I just want to understand the manual tuning method as described in the WIKI from the Setting the I gain, IMAX, and ILMI part.
I’m very exited about the Autotune feature and from what Bill told me it will be available around April 2022 in version 4.2.0.
Thanks for the reply by the way, but if someone can help me understand the WIKI better that would be great!
Thanks for the explanation, I was already stuck at the “HNTCH_FREQ - rotor speed in Hz” part at first, because how on earth do you know this if you don’t have an RPM sensor, but now I skipped to page 4 and from “Attitude Controller Setup” All of the recommended settings are already in the WIKI and were all the same as in my setup. The only difference is this:
ATC_RAT_RLL_FLTE from 20 to 0
ATC_RAT_RLL_FLTT from 10 to 20
ATC_RAT_PIT_FLTE from 20 to 0
ATC_RAT_PIT_FLTT from 10 to 20
ATC_RAT_YAW_FLTE from 20 to 0
ATC_RAT_YAW_FLTT from 10 to 20
But I think these values only matter when INS_HNTCH_ENABLE is set to 1
So I cannot set this to one as I already explained in the beginning at “HNTCH_FREQ - rotor speed in Hz”
I still believe when following the WIKI from Setting the I gain, IMAX, and ILMI that that is the secret to make it fly better, but you appearently you have to be a rocket science engineer to understand this, and no one explained this to me so far, so I believe I’m not the only one who thinks this is abracadabra… Sorry for Bill I know you mean good
Are you shure? Whats with atc_rat_rll/pit_i and ilmi
Are they realy the same
I am still a beginner and had have the same problems as you.
Search for posts from Bill in the forum and read every post! You will learn a lot.
Ardupilot is open source, so you will not get the knowledge the easy way.
I recommend that initially before you tune the VFF gain, you have some I gain in there helping to maintain attitude. After you tune the VFF gain, then a good value of the I gain would be the same as the VFF.
To see the PIDP (Pitch), PIDR (Roll), PIDY (Yaw) and PIDA (Altitude) messages in your log you will have to go to LOG_BITMASK in the full parameter tree. Click on the bitmask value and a popup menu will appear with different options for logging. Make sure the PID message has a check mark beside it.
Orson,
You should at least use a hand held RPM gauge to determine your rotor speed. How do you set your ESC for your desired rotor speed? Does it have a governor?
Thanks for explaining the LOG_BITMASK part, I think it’s very usefull to put this in the WIKI also.
I already ordered a bunch of A3144 hall sensors from Ali and 4mm magnets to mount on the Trex600, and also a hand held RPM gauge.
On one of my other helis the SAB770 I have a Castle ESC with telemetry on the Vbar for RPM, but unfortunately Castle telemerty is not supported on Arducopter jet.
I did find this Flycolor X-Cross HV2 80A Blheli 32 5-12S But I’m not sure if I can use this on a heli, do you maybe know a good ESC with telemetry that works on Arducopter?
Once I get the stuff in, I will mount it and continue with the tuning.
You really don’t need to be able to actively measure rotor speed while flying as long as you know what rotor speed the ESC is attempting to hold. Most ESC governors do a really good job at that and I just set my notch filter frequency to the rotor speed the ESC is set.
I do not have an ESC gevernor, the idea was to use the AP as a governor with the input of the hall sensor connected on CAP1 port of the Pixhawk. I now use a Throttle curve in Arducopter to take care of this.
I have another question regarding tuning, I first tuned the ATC_RAT_YAW_P from 0.18 to the max recommended 0.38 and after that the ATC_ANG_YAW_P from 4.5 to 12.0 and I didn’t notice any real difference in the tail, is this normal?
Sorry for taking up so much of your time, but for me it’s a long journey of learning and spending many days in building and tuning, I hope someone else will learn from this and spend less time than me to get a perfectly flying helicopter!
This may be related to a discussion I was having with @kuspower in his thread. You may not notice a big difference in the response because of the ATC_ACCEL_Y_MAX. If this is really low then the aircraft is limited in its response. The default of 27000 is really too low for helicopters as I have learned recently. I believe this is more like 60000 to over 100000 depending on the helicopter. Be careful as you raise this as it can mask the instability due to high rate P or rate D gain values.
Hi Bill you are right, setting ATC_ACCEL_Y_MAX to 60000 makes a difference, it feels a lot tighter now.
Another question, in the Wiki they talk about tuning FF, but I couldn’t find these in the parameter list
|52|Rate Pitch FF|ATC_RAT_PIT_FF (heli only)|
|53|Rate Roll FF|ATC_RAT_RLL_FF (heli only)|
|54|Rate Yaw FF|ATC_RAT_YAW_FF (heli only)|
I could find the VFF values though, I suppose this is what’s meant?
Below is my log file with the sharp stick inputs for roll and pitch, I decreased ATC_RAT_PIT_VFF from 0.15 to 0.14 and ATC_RAT_RLL_VFF from 0.15 to 0.13, but when I look at the graph I see a big difference above the 0 line and below especially for the roll.
I turned all the relevant LOG_BITMASK values on, I know your busy with cleaning up the autotune code, but if you can spare a minute to look at my log and to advise I would be a verry happy camper.
I will take a look if I get a chance. I describe in one of these thread how to determine if the FF is sufficient. It deals with the P gain and looking at its contribution. Relative to the FF contribution. You can see these individual contributions in the PID message in the log. It basically comes down to the P contribution should reverse at some point opposite to the input being made (shown by the FF term) at some point during the input. If the P contribution continues with the FF, then the FF needs to be larger.
I’m not quite 100% sure, it’s really difficult for me to understand, but I think my tuning so far is not as bad as from zking786, because the peak FF values don’t differ as much from the P values as his.
It’s a good thing autotune is coming, because I guess I’m not the only one to struggle with the tuning