Subversion Repositories FlightCtrl

Rev

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

Rev 167 Rev 182
Line 1... Line 1...
1
*********************************************************************
1
*********************************************************************
2
GPS Implementierung von Peter Muehlenbrock ("Salvo") fuer Mikrokopter/FlightCrtl
2
GPS Implementierung von Peter Muehlenbrock ("Salvo") fuer Mikrokopter/FlightCrtl
3
Stand 25.9.2007
3
Stand 28.9.2007
4
Verwendung der SW ohne Gewaehr. Siehe auch die Lizenzbedingungen in den Files gps.c, math.c
4
Verwendung der SW ohne Gewaehr. Siehe auch die Lizenzbedingungen in den Files gps.c, math.c
Line 5... Line 5...
5
 
5
 
Line 6... Line 6...
6
*********************************************************************
6
*********************************************************************
7
 
7
 
8
Hardware-Voraussetzungen: 
8
Hardware-Voraussetzungen: 
9
Kalibrierter Kompass vom Typ CMPS03, waagrecht eingebaut
9
Kalibrierter Kompass vom Typ CMPS03, waagrecht eingebaut
Line 10... Line 10...
10
GPS Modul vom Typ ublox, Die Meldungungen "NAV_STATUS, NAV_POSUTM und NAV_VELED"
10
GPS Modul vom Typ ublox, Die Meldungungen "NAV_STATUS, NAV_POSUTM und NAV_VELED"
11
mussen mit 4 HZ Updaterate aktiviert sein. Anschluss an RX Port der FlightCRtl
11
mussen mit 4 HZ Updaterate aktiviert sein. Anschluss an RX Port der FlightCRtl.
12
 
12
 
13
Software-Voraussetzungen:
13
Software-Voraussetzungen:
14
in fc.h muessen die Neutralwerte ACC_X_NEUTRAL, ACC_Y_NEUTRAL und ACC_Z_NEUTRAL
14
in fc.h muessen die Neutralwerte ACC_X_NEUTRAL, ACC_Y_NEUTRAL und ACC_Z_NEUTRAL
15
eingetragen werden. Hierzu den Kopter waagrecht ausrichten (Wasserwaage) und mit dem Mikrokoptertool 
15
eingetragen werden. Hierzu den Kopter waagrecht ausrichten (Wasserwaage) und mit dem Mikrokoptertool 
16
die Neutralwerte ermitteln. 
-
 
Line 17... Line 16...
17
In timer0.h muess die Ausrichtung des Kompasses bezogen auf die Nordachse des Kopters 
16
die Neutralwerte ermitteln. 
18
eingetragen sein. KOMPASS_OFFSET legt diesen Wert fest.
17
In timer0.h muess die Ausrichtung des Kompasses bezogen auf die Nordachse des Kopters 
19
 
18
eingetragen sein. KOMPASS_OFFSET legt diesen Wert fest. 
20
 
19
 
21
Hexfiles:
20
Hexfiles:
22
Ich habe bewußt keinen Hexfile generiert, da die Neutralwerte spezifisch je Kopter sind. 
21
Ich habe bewußt keinen Hexfile generiert, da die Neutralwerte spezifisch je Kopter sind. 
Line 23... Line 22...
23
Die SW muß also individuell compiliert werden und der Hexfile in die FlightCrtl eingebaut werden.
22
Die SW muß also individuell compiliert werden und der Hexfile in die FlightCrtl eingebaut werden.
24
Der Lohn fuer die Muehe ist eine sehr driftarme Fluglageregelung sowie eine von der Startausrichtung 
23
Der Lohn fuer die Muehe ist eine sehr driftarme Fluglageregelung sowie eine von der Startausrichtung 
25
unabhaengige waagrechte Lage in der Luft.
24
unabhaengige waagrechte Lage in der Luft.
26
Alle Einstellungen beziehen sich auf AVR Studio von Atmel und den WIN_AVR Compiler.
25
Alle Einstellungen beziehen sich auf AVR Studio von Atmel und den WIN_AVR Compiler.
27
 
26
 
Line 28... Line 27...
28
Parametrierung:
27
Parametrierung:
29
Der GPS Hold Regler ist ein PID Regler, der ueber die UserParameter1(I), 2(P) und D(3) gesteuert wird.
28
Der GPS Hold Regler ist ein PID Regler, der ueber die UserParameter1(I), 2(P) und D(3) gesteuert wird.
30
UserParameter1 beschreibt den I-Anteil, UserParameter2 den P Antei, UserParameter3 den D Anteil.
29
UserParameter1 beschreibt den I-Anteil, UserParameter2 den P-Anteil, UserParameter3 den D-Anteil.
31
Hier kann gespielt werden. Wenn alle 0 sind, ist der Regler deaktiviert.
30
Hier kann gespielt werden. Wenn alle 0 sind, ist der Regler deaktiviert.
32
Standardwerte sind 1 fuer Parameter1, 32 fuer Parameter 2 und 4 fuer Parameter 3.
31
Standardwerte sind 1 fuer Parameter1, 2 fuer Parameter2 und 4 fuer Parameter3.
Line 33... Line 32...
33
 
32
 
34
Voraussetzungen für GPS_Hold:
33
Voraussetzungen für GPS_Hold:
35
Neben den genannten HW und SW Voraussetzungen muß beim Kalibrieren das GPS MOdul bereits Positions
34
Neben den genannten HW und SW Voraussetzungen muß beim Kalibrieren das GPS MOdul bereits Positions
-
 
35
daten liefern. Nur dann wird die Home Position abgespeichert und nur dann wird GPS_Hold aktiviert.
36
daten liefern. Nur dann wird die Home Position abgespeichert und nur dann wird GPS_Hold aktiviert.
36
Kenntlich gemacht wird dies durch einen etwas laengeren Piepser nach dem Kalibrieren.
Line 37... Line 37...
37
Kenntlich gemacht wird dies durch einen etwas laengeren Piepser nach dem Kalibrieren.
37
Das GPS Aktiv Flag im Setting muss aktiviert sein. Eine Ausrichtung des Kopters nach Nord etc. ist nicht erforderlich.
38
Das GPS Aktiv Flag im Setting muss aktiviert sein. Eine Ausrichtung des Kopters nach Nord etc. ist nicht erforderlich.
38
 
39
 
39
Aktivierung GPS_Hold im Flug: 
40
Aktivierung GPS_Hold im Flug: 
40
Wenn alle genannten Voraussetzungen erfüllt sind, wird GPS Hold im Flug automatisch aktiviert, sobald der Nick und Roll Stick
41
Wenn alle genannten Voraussetzungen erfüllt sind, wird GPS Hold im Flug automatisch aktiviert, sobald der Nick und Roll Stick
41
fuer ca. 500msec in Neutrallage sind. Weicht einer der Sticks davon ab (Parameter GPS_STICK_HOLDOFF) oder liefert das GPS Modul keine
Line 42... Line 42...
42
fuer ca. 500msec in Neutrallage sind. Weicht einer der Sticks davon ab (Parameter GPS_STICK_HOLDOFF) wird GPS_Hold sofort deaktiviert.
42
gueltigen Daten mehr wird GPS_Hold sofort deaktiviert.
43
Damit kann jederzeit die manuelle Kontrolle wieder übernommen werden.
-
 
-
 
43
Damit kann jederzeit die manuelle Kontrolle wieder übernommen werden.
-
 
44
 
Line 44... Line -...
44
 
-
 
45
GPS_Hold regelt nur horizontale Abweichungen, keine Hoehe.  
-