Problem with tandem yaw tunning

i am tunning a tandem helicopter.Now it is good to fly in the stabilize mode. The roll and pitch flight is also good in the alihod mode and loiter mode, but the problem of yaw adjustment.
in althold mode and loiter mode,When using the joystick to adjust the yaw, the pitch of the drone will shake up and down.
here is some pic of my log.



These two pictures show that my aircraft follows the pitch and roll attitudes. The pitch feels okay to follow, and the roll following effect does not feel very good.I think this may have something to do with the adjustment of my VFF parameters. Roll RATE.RDES is smaller than RATE.R. I think the VFF of the ROLL axis should be reduced. There is no adjustment yet.


The above picture shows the change of PITCH and ROLL when the aircraft is hovering in loiter mode. It seems that the change of one or two degrees has been adjusted. I don’t know if this is normal.

The picture above shows the curve of the yaw adjustment when the aircraft is in the loiter.

This picture can show that when using the joystick to adjust the row direction, the pitch is shaking up and down.

The way to adjust the yaw is. Swipe left or right and return to center.This can be seen from the light green curve of the figure.


The picture above is related parameters.

can anybody give me some tunning points?
Thanks in advance .

@moluav Great project!! Glad to hear that you’ve got some tuning done in stabilize mode. First, not sure if you are able, but you will get more heli guys attention if you put this post in the traditional helicopter thread of ArduCopter.

What size is this aircraft? Rotor diameter? two engines or one? Electric or gas? how much does the heli weigh? what version of ArduCopter firmware are you running?

Do you have a param file and log that you can post? The tuning page in mission planner does not show the rate FF terms.

It is possible that you would want to reduce VFF to reduce the overshoots. But I want to look at your settings and review your log.

hi,bill. drone size is 70 inch. Rotor diameter is 74 inch.it‘s a drone with only one engine.weigh is about 30kg.i am using the ArduCopter 4.0.3.i have upload my parm and log file to google drive.thanks for you help.
https://drive.google.com/drive/folders/1tNdkQAQXU-k-5gXMd2kH3aJyTdgFmB2H?usp=sharing

Is the engine electric or internal combustion engine? You are using the ardupilot built in governor but have your RSC_IDLE set to 0. very odd. You are only running this rotor speed at 1000 RPM?

EDIT: What are you running at 6000 RPM? Also why is the harmonic notch frequency at 50 hz. You are using the dynamic harmonic notch using the rotor RPM sensor. The INS_HNTCH_FREQ should be set to half of the operating rotor speed in hz. So if your rotor speed is 1000 RPM then half of it in hz would be 8.3 hz. As for the harmonics, what are the number of blades on each rotor?

@moluav Would love to see some pictures of your heli!!

Also, in looking at your log, I need you to set the LOG_BITMASK to 131071. This will log data at a high enough rate that I can see what frequencies we are dealing with. I think it is the rotor vibration but I can’t be sure with the current log. Please fly a similar flight to the log you just posted except with the LOG_BITMASK I requested.

Thanks.

hi,bill.it is internal combustion engine.Maybe I did not fully understand the meaning of the RSC_IDLE parameter.When the engine started, we opened some throttles.
blade rotor speed is 1000rpm,engine roter speed is 6000 rpm.There is a ratio of about 6 times.
the reason of why i set the harmonic notch frequency at 50 hz is i want to filter the engine vibration.
the engne is about 6000rpm,so the frequence is 100HZ? so i set to 50hz.
There are two blades of each roter.Is there something wrong with my above understanding?

Sorry, the aircraft pictures cannot be sent temporarily.The aircraft is currently flying in stabalize mode, so I think the fuselage should be fine.today is rainning,i will upload log soon with LOG_BITMASK to 13107.
Thank you for your help.

That should be 131071

I will have to see your logs to give you better advice. however, since your engine is 6 times the rotor then I would suggest setting the harmonic notch to your rotor speed (through the RPM sensor) and then set the 1st, 2nd and 6th harmonic with the harmonic bitmask. Then the INS_HNTCH_FREQ would be set to 8.3 hz to be half of your rotor speed in hz.

The RSC_IDLE parameter is the throttle setting after you arm but before you flip the switch for motor interlock enable. So the idea would be to arm the aircraft. Then start your engine with the RSC_IDLE parameter set for starting and idle for the engine. The flip motor interlock enable and the throtttle is increased to the bottom of the throttle curve. It is very interesting to see your throttle curve so flat. I expected you to tell me that it was an electric motor and not a gas engine.

Maybe I misunderstood this parameter, RPM [0] is the blade rotor speed. The data used by INS_HNTCH_REF RPM [0] . next time I will upload the log with two values and set LOG_BITMASK to 131071

In my use, I think it is inconvenient to use interlock. so I made small changes in the program.


Maybe this is why I set RSC_IDLE to 0. :joy:
But according to what you said, I do have some problems in this way. Is there any problem in performing automatic takeoff like this?
Is a gas engine.The internal governor has played a very good auxiliary role, but in my actual testing, I also found that sometimes the rotor speed adjustment is problematic, and the speed cannot be maintained. When the weather is hot, the rotor speed will overrun.

Well that may be so but there could be unexpected consequences for making changes like that. Why not just have the interlock on one channel and arm/disarm on another channel and tie them to the same switch. Much safer to do it that way.

I don’t know because I don’t test modifications like this.

Well I don’t think you have the throttle curve tuned properly or you are running the motor at a very low throttle for flight rotor speeds. I think the governor requires a throttle curve that provides for some nominal flight rotor speed. You could make it faster or slower from there with the Governor. If you are only using engine idle throttle throughout the throttle curve, then I think you are asking a lot from the governor.

@bnsgeyer Yes, maybe the throttle curve is not tuned well. When the weather is hot, I need to reduce the value of the throttle setting.Our engine can work up to 1W rpm, but the manufacturer recommends it to be within 7000 rpm.Our throttle reached almost 10% to reach this speed.

I transferred the log with the log_bitmask set to 131071 to the network disk, please download it.
https://drive.google.com/file/d/1ZWhQWAQq8tZB5uRu-SuwED198xI9e8-j/view?usp=sharing

@bnsgeyer i compared my parmmeters with the simulation system in MP. i found my the value of ATC_ANG_PIT_P and ATC_ANG_RLL_P are 6 .however my values are 3.5.Is the value I configured too small?

@moluav I need to study your new log. I suspect you have a feedback instability around 2.5 hz and I am not sure just yet what is causing it. I have helped one other user tune a tandem so I don’t have much experience at it. They are significantly different from a main rotor/tail rotor configuration. For an aircraft like yours which is pretty big, I would be concerned with fuselage interaction with the rotors. If your fuselage isn’t stiff enough, the two rotors could be causing flexing of the fuselage and vibrations.
I will look at your log today.

@moluav I can’t download the file. It said I had to request permission. Which I did. So waiting on you to give me permission to access the file.

This fuselage is softer than my last one, but due to uncertain reasons, the aircraft had an engine error on the ground, and the aircraft was broken.we decide to make another fuselage later.But it takes some time

in the first flight the INS_HNTCH_REF valuue is 50hz. in the second flight the INS_HNTCH_REF value is 8.3hz as you recommended

Here is the roll rate signal with your original settings for the harmonic notch. You can see a very strong vibration at 32 hz (1920 RPM). This is the 2/rev (2 times the main rotor speed). Which is very common to have a strong influence on vibration.

Here is the whole flight. You can see in the second flight where you used the new harmonic notch settings. You can see how well it attenuated the vibrations.

I think you had the attenuation (INS_HNTCH_ATT) set at 15. Set it to 30. That should really knock down the vibrations that the control system is seeing.

Also set the INS_HNTCH_BW to 10. 20 is too high.

in the first flight the INS_HNTCH_REF valuue is 50hz. in the second flight the INS_HNTCH_REF value is 8.3hz as you recommended

Please correct your LOG_BITMASK parameter for future logs. You have it set as 131701. I want it set to 131071. The data is good from the standpoint that I can now see it at a higher rate but I lost the PID data. So please make sure you change this.

Thanks.