Subversion Repositories FlightCtrl

Rev

Rev 880 | Rev 884 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 880 Rev 882
Line 187... Line 187...
187
    HoeheD = 0;
187
    HoeheD = 0;
188
    Mess_Integral_Hoch = 0;
188
    Mess_Integral_Hoch = 0;
189
    KompassStartwert = KompassValue;
189
    KompassStartwert = KompassValue;
190
    GPS_Neutral();
190
    GPS_Neutral();
191
    beeptime = 50;  
191
    beeptime = 50;  
192
        Umschlag180Nick = (long) EE_Parameter.WinkelUmschlagNick * 2500L;
192
        Umschlag180Nick = ((long) EE_Parameter.WinkelUmschlagNick * 2500L) + 15000L;
193
        Umschlag180Roll = (long) EE_Parameter.WinkelUmschlagRoll * 2500L;
193
        Umschlag180Roll = ((long) EE_Parameter.WinkelUmschlagRoll * 2500L) + 15000L;
194
    ExternHoehenValue = 0;
194
    ExternHoehenValue = 0;
195
    ErsatzKompass = KompassValue * GIER_GRAD_FAKTOR;
195
    ErsatzKompass = KompassValue * GIER_GRAD_FAKTOR;
196
    GierGyroFehler = 0;
196
    GierGyroFehler = 0;
197
    SendVersionToNavi = 1;
197
    SendVersionToNavi = 1;
198
}
198
}
Line 243... Line 243...
243
            MesswertRoll += (tmpl2*Parameter_AchsGegenKopplung1)/512L; //109
243
            MesswertRoll += (tmpl2*Parameter_AchsGegenKopplung1)/512L; //109
244
            Mess_IntegralRoll2 += MesswertRoll;
244
            Mess_IntegralRoll2 += MesswertRoll;
245
            Mess_IntegralRoll +=  MesswertRoll - LageKorrekturRoll;
245
            Mess_IntegralRoll +=  MesswertRoll - LageKorrekturRoll;
246
            if(Mess_IntegralRoll > Umschlag180Roll)
246
            if(Mess_IntegralRoll > Umschlag180Roll)
247
            {
247
            {
248
             Mess_IntegralRoll  = -(Umschlag180Roll - 10000L);
248
             Mess_IntegralRoll  = -(Umschlag180Roll - 25000L);
249
             Mess_IntegralRoll2 = Mess_IntegralRoll;
249
             Mess_IntegralRoll2 = Mess_IntegralRoll;
250
            }
250
            }
251
            if(Mess_IntegralRoll <-Umschlag180Roll)
251
            if(Mess_IntegralRoll <-Umschlag180Roll)
252
            {
252
            {
253
             Mess_IntegralRoll =  (Umschlag180Roll - 10000L);
253
             Mess_IntegralRoll =  (Umschlag180Roll - 25000L);
254
             Mess_IntegralRoll2 = Mess_IntegralRoll;
254
             Mess_IntegralRoll2 = Mess_IntegralRoll;
255
            }  
255
            }  
256
            if(AdWertRoll < 15)   MesswertRoll = -1000;
256
            if(AdWertRoll < 15)   MesswertRoll = -1000;
257
            if(AdWertRoll <  7)   MesswertRoll = -2000;
257
            if(AdWertRoll <  7)   MesswertRoll = -2000;
258
            if(PlatinenVersion == 10)
258
            if(PlatinenVersion == 10)
Line 268... Line 268...
268
// Nick  ++++++++++++++++++++++++++++++++++++++++++++++++
268
// Nick  ++++++++++++++++++++++++++++++++++++++++++++++++
269
            MesswertNick -= tmpl2;
269
            MesswertNick -= tmpl2;
270
            MesswertNick -= (tmpl*Parameter_AchsGegenKopplung1)/512L;
270
            MesswertNick -= (tmpl*Parameter_AchsGegenKopplung1)/512L;
271
            Mess_IntegralNick2 += MesswertNick;
271
            Mess_IntegralNick2 += MesswertNick;
272
            Mess_IntegralNick  += MesswertNick - LageKorrekturNick;
272
            Mess_IntegralNick  += MesswertNick - LageKorrekturNick;
-
 
273
 
273
            if(Mess_IntegralNick > Umschlag180Nick)
274
            if(Mess_IntegralNick > Umschlag180Nick)
274
            {
275
             {
275
             Mess_IntegralNick = -(Umschlag180Nick - 10000L);
276
              Mess_IntegralNick = -(Umschlag180Nick - 25000L);
276
             Mess_IntegralNick2 = Mess_IntegralNick;
277
              Mess_IntegralNick2 = Mess_IntegralNick;
277
            }
278
             }
278
            if(Mess_IntegralNick <-Umschlag180Nick)
279
            if(Mess_IntegralNick <-Umschlag180Nick)
279
            {
280
            {
280
             Mess_IntegralNick =  (Umschlag180Nick - 10000L);
281
             Mess_IntegralNick =  (Umschlag180Nick - 25000L);
281
             Mess_IntegralNick2 = Mess_IntegralNick;
282
             Mess_IntegralNick2 = Mess_IntegralNick;
282
            }
283
            }
283
            if(AdWertNick < 15)   MesswertNick = -1000;
284
            if(AdWertNick < 15)   MesswertNick = -1000;
284
            if(AdWertNick <  7)   MesswertNick = -2000;
285
            if(AdWertNick <  7)   MesswertNick = -2000;
285
            if(PlatinenVersion == 10)
286
            if(PlatinenVersion == 10)
Line 488... Line 489...
488
                }
489
                }
489
            if((modell_fliegt < 256))
490
            if((modell_fliegt < 256))
490
                {
491
                {
491
                SummeNick = 0;
492
                SummeNick = 0;
492
                SummeRoll = 0;
493
                SummeRoll = 0;
493
                if(modell_fliegt == 260) NeueKompassRichtungMerken = 1;
494
                if(modell_fliegt == 250) NeueKompassRichtungMerken = 1;
494
                }
495
                }
495
            if((PPM_in[EE_Parameter.Kanalbelegung[K_GAS]] > 80) && MotorenEin == 0)
496
            if((PPM_in[EE_Parameter.Kanalbelegung[K_GAS]] > 80) && MotorenEin == 0)
496
                {
497
                {
497
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                
498
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                
498
// auf Nullwerte kalibrieren
499
// auf Nullwerte kalibrieren
Line 1091... Line 1092...
1091
 
1092
 
1092
    DebugOut.Analog[21] = MesswertNick;
1093
    DebugOut.Analog[21] = MesswertNick;
Line 1093... Line 1094...
1093
    DebugOut.Analog[22] = MesswertRoll;
1094
    DebugOut.Analog[22] = MesswertRoll;
1094
 
1095
 
1095
    // Maximalwerte abfangen
1096
    // Maximalwerte abfangen
1096
    #define MAX_SENSOR  2048
1097
    #define MAX_SENSOR  (4096*STICK_GAIN)
1097
    if(MesswertNick >  MAX_SENSOR) MesswertNick =  MAX_SENSOR;
1098
    if(MesswertNick >  MAX_SENSOR) MesswertNick =  MAX_SENSOR;
1098
    if(MesswertNick < -MAX_SENSOR) MesswertNick = -MAX_SENSOR;
1099
    if(MesswertNick < -MAX_SENSOR) MesswertNick = -MAX_SENSOR;
1099
    if(MesswertRoll >  MAX_SENSOR) MesswertRoll =  MAX_SENSOR;
1100
    if(MesswertRoll >  MAX_SENSOR) MesswertRoll =  MAX_SENSOR;