Rev 964 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 964 | Rev 1020 | ||
---|---|---|---|
Line 245... | Line 245... | ||
245 | Mess_Integral_Gier += MesswertGier; |
245 | Mess_Integral_Gier += MesswertGier; |
246 | // Mess_Integral_Gier2 += MesswertGier; |
246 | // Mess_Integral_Gier2 += MesswertGier; |
247 | if(ErsatzKompass >= (360L * GIER_GRAD_FAKTOR)) ErsatzKompass -= 360L * GIER_GRAD_FAKTOR; // 360° Umschlag |
247 | if(ErsatzKompass >= (360L * GIER_GRAD_FAKTOR)) ErsatzKompass -= 360L * GIER_GRAD_FAKTOR; // 360° Umschlag |
248 | if(ErsatzKompass < 0) ErsatzKompass += 360L * GIER_GRAD_FAKTOR; |
248 | if(ErsatzKompass < 0) ErsatzKompass += 360L * GIER_GRAD_FAKTOR; |
249 | // Kopplungsanteil +++++++++++++++++++++++++++++++++++++ |
249 | // Kopplungsanteil +++++++++++++++++++++++++++++++++++++ |
250 | if((EE_Parameter.GlobalConfig & CFG_HEADING_HOLD) || (Parameter_UserParam1 > 50)) IntegralFaktor = 0; // Doppelt ?? MartinR |
250 | if((EE_Parameter.GlobalConfig & CFG_HEADING_HOLD) || (Parameter_UserParam1 > 180)) IntegralFaktor = 0; // Doppelt ?? MartinR |
Line 251... | Line 251... | ||
251 | 251 | ||
252 | if(!Looping_Nick && !Looping_Roll && IntegralFaktor && (EE_Parameter.GlobalConfig & CFG_ACHSENKOPPLUNG_AKTIV)) |
252 | if(!Looping_Nick && !Looping_Roll && IntegralFaktor && (EE_Parameter.GlobalConfig & CFG_ACHSENKOPPLUNG_AKTIV)) |
253 | { |
253 | { |
254 | tmpl = (MesswertGierBias * Mess_IntegralNick) / 2048L; |
254 | tmpl = (MesswertGierBias * Mess_IntegralNick) / 2048L; |
Line 658... | Line 658... | ||
658 | int tmp_int; |
658 | int tmp_int; |
659 | static int stick_nick,stick_roll; // .._neutral hinzugefügt aber Deklaration siehe oben MartinR |
659 | static int stick_nick,stick_roll; // .._neutral hinzugefügt aber Deklaration siehe oben MartinR |
660 | ParameterZuordnung(); |
660 | ParameterZuordnung(); |
Line 661... | Line 661... | ||
661 | 661 | ||
662 | 662 | ||
663 | if(Parameter_UserParam1 > 50) // MartinR: zweiter Stick_P Wert nur, wenn HH über Schalter aktiv ist |
663 | if(Parameter_UserParam1 > 180) // MartinR: zweiter Stick_P Wert nur, wenn HH über Schalter aktiv ist |
664 | { |
664 | { |
665 | stick_nick = (stick_nick * 3 + PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] * Parameter_UserParam2 - stick_nick_neutral) / 4; |
665 | stick_nick = (stick_nick * 3 + PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] * Parameter_UserParam2 - stick_nick_neutral) / 4; |
Line 754... | Line 754... | ||
754 | GyroFaktor = ((float)Parameter_Gyro_P + 10.0) / (256.0/STICK_GAIN); |
754 | GyroFaktor = ((float)Parameter_Gyro_P + 10.0) / (256.0/STICK_GAIN); |
755 | IntegralFaktor = ((float) Parameter_Gyro_I) / (44000 / STICK_GAIN); |
755 | IntegralFaktor = ((float) Parameter_Gyro_I) / (44000 / STICK_GAIN); |
756 | //IntegralFaktor_Gier = ((float) Parameter_UserParam3) / (44000 / STICK_GAIN); // MartinR |
756 | //IntegralFaktor_Gier = ((float) Parameter_UserParam3) / (44000 / STICK_GAIN); // MartinR |
Line 757... | Line 757... | ||
757 | 757 | ||
758 | // if(EE_Parameter.GlobalConfig & CFG_HEADING_HOLD) IntegralFaktor = 0; |
758 | // if(EE_Parameter.GlobalConfig & CFG_HEADING_HOLD) IntegralFaktor = 0; |
Line 759... | Line 759... | ||
759 | if((EE_Parameter.GlobalConfig & CFG_HEADING_HOLD) || (Parameter_UserParam1 > 50)) IntegralFaktor = 0; // Doppelt!? Doppel wieder aktiviert, da Impuls beim Umschalten. MartinR |
759 | if((EE_Parameter.GlobalConfig & CFG_HEADING_HOLD) || (Parameter_UserParam1 > 180)) IntegralFaktor = 0; // Doppelt!? Doppel wieder aktiviert, da Impuls beim Umschalten. MartinR |
760 | 760 | ||
Line 761... | Line 761... | ||
761 | if(GyroFaktor < 0) GyroFaktor = 0; |
761 | if(GyroFaktor < 0) GyroFaktor = 0; |
Line 1226... | Line 1226... | ||
1226 | //OCR0B = 180 - (Poti1 + 120) / 4; |
1226 | //OCR0B = 180 - (Poti1 + 120) / 4; |
1227 | //DruckOffsetSetting = OCR0B; |
1227 | //DruckOffsetSetting = OCR0B; |
1228 | GasMischanteil *= STICK_GAIN; |
1228 | GasMischanteil *= STICK_GAIN; |
Line 1229... | Line 1229... | ||
1229 | 1229 | ||
1230 | 1230 | ||
1231 | if((EE_Parameter.GlobalConfig & CFG_HOEHENREGELUNG) && !(Parameter_UserParam1 > 50)) // Höhenregelung // MartinR: Höhenregelung bei HH abschalten |
1231 | if((EE_Parameter.GlobalConfig & CFG_HOEHENREGELUNG) && !(Parameter_UserParam1 > 180)) // Höhenregelung // MartinR: Höhenregelung bei HH abschalten |
1232 | { |
1232 | { |
1233 | int tmp_int; |
1233 | int tmp_int; |
1234 | if(EE_Parameter.GlobalConfig & CFG_HOEHEN_SCHALTER) // Regler wird über Schalter gesteuert |
1234 | if(EE_Parameter.GlobalConfig & CFG_HOEHEN_SCHALTER) // Regler wird über Schalter gesteuert |
- | 1235 | { |
|
1235 | { |
1236 | // if(Parameter_MaxHoehe < 50) // so war es |
1236 | if(Parameter_MaxHoehe < 50) |
1237 | if (((50 < Parameter_MaxHoehe) && (Parameter_MaxHoehe < 180)) || !IntegralFaktor) // if (Parameter_MaxHoehe 50..180) |
1237 | { |
1238 | { |
1238 | SollHoehe = HoehenWert - 20; // Parameter_MaxHoehe ist der PPM-Wert des Schalters |
1239 | SollHoehe = HoehenWert - 20; // Parameter_MaxHoehe ist der PPM-Wert des Schalters |
1239 | HoehenReglerAktiv = 0; |
1240 | HoehenReglerAktiv = 0; |