Subversion Repositories FlightCtrl

Rev

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

Rev 484 Rev 497
Line 862... Line 862...
862
                if (!updKompass--)              // Aufruf mit ~10 Hz
862
                if (!updKompass--)              // Aufruf mit ~10 Hz
863
                {
863
                {
864
                        updKompass = 50;
864
                        updKompass = 50;
865
                        KompassValue = heading_MM3();
865
                        KompassValue = heading_MM3();
866
                        KompassRichtung = ((540 + KompassValue - KompassStartwert) % 360) - 180;
866
                        KompassRichtung = ((540 + KompassValue - KompassStartwert) % 360) - 180;
-
 
867
                }
867
 
868
               
868
                        w = abs(IntegralNick /512); // mit zunehmender Neigung den Einfluss drosseln
869
                        w = abs(IntegralNick /512); // mit zunehmender Neigung den Einfluss drosseln
869
                        v = abs(IntegralRoll /512);
870
                        v = abs(IntegralRoll /512);
870
                        if (v > w) w = v; // grösste Neigung ermitteln
871
                        if (v > w) w = v; // grösste Neigung ermitteln
871
                        if (w < 40 && NeueKompassRichtungMerken)    
872
                        if (w < 35 && NeueKompassRichtungMerken)    
872
                        {
873
                        {
873
                                KompassStartwert = KompassValue;
874
                                KompassStartwert = KompassValue;
874
                                NeueKompassRichtungMerken = 0;
875
                                NeueKompassRichtungMerken = 0;
875
                        }
876
                        }
876
                        w = (w * Parameter_KompassWirkung) / 64;           // auf die Wirkung normieren
877
                        w = (w * Parameter_KompassWirkung) / 64;           // auf die Wirkung normieren
Line 878... Line 879...
878
                        if (w > 0)
879
                        if (w > 0)
879
                        {
880
                        {
880
                                Mess_Integral_Gier += (KompassRichtung * w) / 32;  // nach Kompass ausrichten
881
                                Mess_Integral_Gier += (KompassRichtung * w) / 32;  // nach Kompass ausrichten
881
                        }  
882
                        }  
882
                        else beeptime = 500;
883
                        else beeptime = 500;
883
                }
-
 
884
        }
884
        }
885
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                
885
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                
Line 886... Line 886...
886
 
886
 
887
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                
887
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++