Rev 258 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 258 | Rev 291 | ||
---|---|---|---|
1 | ********************************************************************* |
1 | ********************************************************************* |
2 | GPS Implementierung von Peter Muehlenbrock ("Salvo") für Mikrokopter/FlightCrtl |
2 | GPS Implementierung von Peter Muehlenbrock ("Salvo") für Mikrokopter/FlightCrtl |
3 | Stand 9.10.2007 |
3 | Stand 13.10.2007 |
4 | Verwendung der SW ohne Gewaehr. Siehe auch die Lizenzbedingungen in File Licensce_LPGL.txt und Licensce_GPL.txt |
4 | Verwendung der SW ohne Gewaehr. Siehe auch die Lizenzbedingungen in File Licensce_LPGL.txt und Licensce_GPL.txt |
5 | ********************************************************************* |
5 | ********************************************************************* |
6 | Hardware-Voraussetzungen: |
6 | Hardware-Voraussetzungen: |
7 | Kalibrierter Kompass vom Typ CMPS03, waagrecht eingebaut |
7 | Kalibrierter Kompass vom Typ CMPS03, waagrecht eingebaut |
8 | GPS Modul vom Typ ublox, Die Meldungungen "NAV_STATUS", "NAV_POSUTM" und "NAV_VELNED" |
8 | GPS Modul vom Typ ublox, Die Meldungungen "NAV_STATUS", "NAV_POSUTM" und "NAV_VELNED" |
9 | mussen mit 4 HZ Updaterate aktiviert sein. Anschluss an RX Port der FlightCRtl. Baudrate ist 57600 wie beim Kopter Tool. |
9 | mussen mit 4 HZ Updaterate aktiviert sein. Anschluss an RX Port der FlightCRtl. Baudrate ist 57600 wie beim Kopter Tool. |
10 | 10 | ||
11 | Software-Voraussetzungen: |
11 | Software-Voraussetzungen: |
12 | in fc.h müsen die Neutralwerte ACC_X_NEUTRAL und ACC_Y_NEUTRAL |
12 | in fc.h müsen die Neutralwerte ACC_X_NEUTRAL und ACC_Y_NEUTRAL |
13 | eingetragen werden. Hierzu den Kopter waagrecht ausrichten (Wasserwaage) und mit dem Mikrokoptertool |
13 | eingetragen werden. Hierzu den Kopter waagrecht ausrichten (Wasserwaage) und mit dem Mikrokoptertool |
14 | die Neutralwerte ermitteln. |
14 | die Neutralwerte ermitteln. |
15 | In timer0.h muess die Ausrichtung des Kompasses bezogen auf die Nordachse des Kopters |
15 | In timer0.h muess die Ausrichtung des Kompasses bezogen auf die Nordachse des Kopters |
16 | eingetragen sein. KOMPASS_OFFSET legt diesen Wert fest. |
16 | eingetragen sein. KOMPASS_OFFSET legt diesen Wert fest. |
17 | 17 | ||
18 | Hexfiles: |
18 | Hexfiles: |
19 | Ich habe bewußt keinen Hexfile generiert, da die Neutralwerte spezifisch je Kopter sind. |
19 | Ich habe bewußt keinen Hexfile generiert, da die Neutralwerte spezifisch je Kopter sind. |
20 | Die SW muß also individuell compiliert werden und der Hexfile in die FlightCrtl eingebaut werden. |
20 | Die SW muß also individuell compiliert werden und der Hexfile in die FlightCrtl eingebaut werden. |
21 | Der Lohn für die Muehe ist eine sehr driftarme Fluglageregelung sowie eine von der Startausrichtung |
21 | Der Lohn für die Muehe ist eine sehr driftarme Fluglageregelung sowie eine von der Startausrichtung |
22 | unabhängige waagrechte Lage in der Luft. |
22 | unabhängige waagrechte Lage in der Luft. |
23 | Alle Einstellungen beziehen sich auf AVR Studio von Atmel und den WIN_AVR Compiler. |
23 | Alle Einstellungen beziehen sich auf AVR Studio von Atmel und den WIN_AVR Compiler. |
24 | 24 | ||
25 | Parametrierung: |
25 | Parametrierung: |
26 | Der GPS Hold Regler ist ein PID Regler, der ueber die UserParameter1(P), 2(I) und D(3) gesteuert wird. |
26 | Der GPS Hold Regler ist ein PID Regler, der ueber die UserParameter1(P), 2(I) und D(3) gesteuert wird. |
27 | UserParameter1 beschreibt den P-Anteil, UserParameter2 den I-Anteil und UserParameter3 den D-Anteil. |
27 | UserParameter1 beschreibt den P-Anteil, UserParameter2 den I-Anteil und UserParameter3 den D-Anteil. |
28 | Hier kann und muss gespielt werden.Alle Parameter koennen direkt im Mikrokoptertool in den Settings eingestellt werden. |
28 | Hier kann und muss gespielt werden.Alle Parameter koennen direkt im Mikrokoptertool in den Settings eingestellt werden. |
29 | Standardwerte bei kaum Wind sind 8 für den P-Anteil, 1 für den I-Anteil und 12 für den D-Anteil. |
29 | Standardwerte bei kaum Wind sind 8 für den P-Anteil, 1 für den I-Anteil und 12 für den D-Anteil. |
30 | Standardwerte bei leichtem verhältnissen sind 12 für den P-Anteil, 2 für den I-Anteil und 18 für den D-Anteil. |
30 | Standardwerte bei leichtem verhältnissen sind 12 für den P-Anteil, 2 für den I-Anteil und 18 für den D-Anteil. |
31 | Standardwerte bei rauheren verhältnissen sind 16 für den P-Anteil, 2 für den I-Anteil und 24 für den D-Anteil. |
31 | Standardwerte bei rauheren verhältnissen sind 16 für den P-Anteil, 2 für den I-Anteil und 20 für den D-Anteil. |
32 | Je größer die Werte des "ruckeliger" reagiert die Regelung aber desto schneller und stärker greift sie auch. |
32 | Je größer die Werte des "ruckeliger" reagiert die Regelung aber desto schneller und stärker greift sie auch. |
33 | Wenn alle 0 sind, ist der Regler deaktiviert. |
33 | Wenn alle 0 sind, ist der Regler deaktiviert. |
34 | 34 | ||
35 | Voraussetzungen für GPS_Hold: |
35 | Voraussetzungen für GPS_Hold: |
36 | Neben den genannten HW und SW Voraussetzungen muß beim Kalibrieren das GPS MOdul bereits Positionsdaten liefern. |
36 | Neben den genannten HW und SW Voraussetzungen muß beim Kalibrieren das GPS MOdul bereits Positionsdaten liefern. |
37 | Nur dann wird die Home Position abgespeichert und nur dann wird GPS_Hold aktiviert. |
37 | Nur dann wird die Home Position abgespeichert und nur dann wird GPS_Hold aktiviert. |
38 | Kenntlich gemacht wird dies durch einen etwas längeren Piepser nach dem Kalibrieren. |
38 | Kenntlich gemacht wird dies durch einen etwas längeren Piepser nach dem Kalibrieren. |
39 | Das GPS Aktiv Flag im Setting muss aktiviert sein. |
39 | Das GPS Aktiv Flag im Setting muss aktiviert sein. |
40 | Eine Ausrichtung des Kopters nach Nord etc. ist nicht erforderlich. |
40 | Eine Ausrichtung des Kopters nach Nord etc. ist nicht erforderlich. |
41 | 41 | ||
42 | Aktivierung GPS_Hold im Flug: |
42 | Aktivierung GPS_Hold im Flug: |
43 | Wenn alle genannten Voraussetzungen erfüllt sind, wird GPS Hold im Flug automatisch aktiviert, sobald der Nick und Roll Stick |
43 | Wenn alle genannten Voraussetzungen erfüllt sind, wird GPS Hold im Flug automatisch aktiviert, sobald der Nick und Roll Stick |
44 | fürca. 500msec in Neutrallage sind. Weicht einer der Sticks davon ab (Parameter GPS_STICK_HOLDOFF) oder liefert das GPS Modul oder fällt der |
44 | fürca. 500msec in Neutrallage sind. Weicht einer der Sticks davon ab (Parameter GPS_STICK_HOLDOFF) oder liefert das GPS Modul oder fällt der |
45 | Kompass aus wird GPS_Hold sofort deaktiviert. |
45 | Kompass aus wird GPS_Hold sofort deaktiviert. |
46 | Damit kann jederzeit die manuelle Kontrolle wieder übernommen werden. |
46 | Damit kann jederzeit die manuelle Kontrolle wieder übernommen werden. |
47 | 47 | ||
48 | GPS_Hold regelt nur horizontale Abweichungen, keine Hoehe. |
48 | GPS_Hold regelt nur horizontale Abweichungen, keine Hoehe. |
49 | Der Magnetkompass wird nur in waagrechter Lage dazu benutzt einen internen aus dem Giergyro ermittelten "Ersatz"kompasswert |
49 | Der Magnetkompass wird nur in waagrechter Lage dazu benutzt einen internen aus dem Giergyro ermittelten "Ersatz"kompasswert |
50 | nach zu kalibrieren. Daher funktioniert die Bstimmung der Kopterausrichtung in jeder Lebenslage, sofern nur ab und zu |
50 | nach zu kalibrieren. Daher funktioniert die Bstimmung der Kopterausrichtung in jeder Lebenslage, sofern nur ab und zu |
51 | der Magnetkompass in die waagrechte Lage kommt. |
51 | der Magnetkompass in die waagrechte Lage kommt. |
52 | Ein 3D Kompass ist damit überflüssig. |
52 | Ein 3D Kompass ist damit überflüssig. |
53 | 53 | ||
54 | GPS Rücksturz zur Basis (GPS Home) Funktion |
54 | GPS Rücksturz zur Basis (GPS Home) Funktion |
55 | Voraussetzungen wie bei GPS Hold. |
55 | Voraussetzungen wie bei GPS Hold. |
56 | Die Funktion kann im Flug aktivert werden durch Setzen des Hoehenreglerschalters. |
56 | Die Funktion kann im Flug aktiviert werden durch Setzen des Hoehenreglerschalters. |
57 | Holgers Code habe ich so abgeändert daß der Höhenregler mit "Parameter_MaxHoehe" ab 50 aktiviert wird. |
57 | Holgers Code habe ich so abgeändert daß der Höhenregler mit "Parameter_MaxHoehe" ab 50 aktiviert wird. |
58 | Mit einem Schalter mit Neutrallage können damit die Funktionen |
58 | Mit einem Schalter mit Neutrallage können damit die Funktionen |
59 | Alles aus - Hoehenregler ein, GPS Home Aus - Hoehenregler Ein UND GPS Home ein |
59 | Alles aus - Hoehenregler ein, GPS Home Aus - Hoehenregler Ein UND GPS Home ein |
60 | aktiviert werden. Ist noch nicht die beste Lösung und werde ich noch anpassen |
60 | aktiviert werden. Ist noch nicht die beste Lösung und werde ich noch anpassen |
- | 61 | ||
- | 62 | Weitere Änderungen: |
|
- | 63 | Bei Unterschreiten der eingestellten Warnschwelle für UBAT ertönt zunächst wie gewohnt der Piepser. Geht die Spannung weiter |
|
61 | 64 | runter wird zwansgweise die Gas einstellung langsam reduziert um den Kopter zum Landen zu bringen |
|
62 | 65 | ||
63 | Bekannte Schwächen: |
66 | Bekannte Schwächen: |
64 | Bei längerer Neigung weicht der Ersatzkompass ab, was zu Lageregelungsfehlern bis zum Ausbrechen führen kann. |
67 | Bei längerer Neigung weicht der Ersatzkompass ab, was zu Lageregelungsfehlern bis zum Ausbrechen führen kann. |
65 | 68 | ||
66 | 69 | ||
67 | 70 | ||
68 | 71 | ||
69 | 72 | ||
70 | 73 | ||
71 | 74 | ||
72 | 75 | ||
73 | 76 | ||
74 | 77 | ||
75 | 78 | ||
76 | 79 | ||
77 | 80 |