Afro Mini 32 + GPS

Status
Nicht offen für weitere Antworten.

udo187

Erfahrener Benutzer
#1
Hallo, ich habe eine Verständnisfrage:
Der Afro Mini 32 Flightcontroller hat ja keinen eingebauten magnetischen Kompass.
Das angezeigte Heading ist immer dort 0°, wohin der Kopter beim booten der FC "geschaut" hat.

Wenn die FC um ein GPS erweitert wird, funktioniert dann trotz fehlenden magnetischen Kompass:

1.) Position Hold
2.) RTH

Hat dies bereits jemand versucht? Bzw. kann dies überhaupt funktionieren?

Danke im Voraus für die Antworten!

Udo
 

Ralf W.

Erfahrener Benutzer
#2
Auf vielen GPS-Platinen ist zusätzlich ein externes Magnetometer verfügbar.
Ohne Kompass meldet das GPS, wo der Kopter sich befindet. Wenn er in Ruhe steht oder schwebt gibt es keine Information, wo Norden sein könnte. Mit iNAV klappt PH und RTH bei Kopter daher nicht ohne Kompass. Ein Flächenmodell ist immer in Bewegung. Deshalb kann man dort auch ohne Kompass navigieren.
 

udo187

Erfahrener Benutzer
#3
Danke für die schnelle Antwort!
Mein externes GPS hat leider keinen Kompass.

Ich hoffte dass mit GPS alleine zumindest eine ungefähre Positionierung möglich ist - den sogenannten "toilet bowl effect" (z. B. bei falsch kalibrierten Kompass) würde ich in Kauf nehmen..
Den "virtuellen" Kompass (rechnerisch durch Gyro- Sensor???) immer ungefähr nach Norden ausrichten würde nicht funktionieren?

Gesendet von meinem NX511J mit Tapatalk
 

udo187

Erfahrener Benutzer
#6
Ok, dann war´s das mit meinem Micro-GPS.
Mein Ziel bzw. Versuch wäre, meinen 180er Kopter mit einem möglichst leichten GPS auszurüsten - nun auch noch mit Kompass.
Gewichtsgrenze max. 10g.

Also sowas in der Art:

http://de.aliexpress.com/item/New-Ublox-7-Series-Mini-GPS-w-Compass-for-APM2-6-APM2-8-PX4-Pixhawk-Mini/32491387728.html?spm=2114.13010308.0.43.rUaSh7


Die Afromini32 FC hat ja an der Rückseite 2 Kontakte für den Kompass: SCL und SDA.
Wobei hier dabei steht: Nur 3,3 Volt. Warum?
Der Kompass wird ja nicht über diese beiden Kontakte mit Strom versorgt, sondern bekommt seine Spannung (5V) durch extra Pins.

Muss der Kompass in Cleanflight noch extra konfiguriert werden oder wird er automatisch erkannt (und nimmt mir nicht irgendeinen seriellen Anschluss weg?).


Ich bin schon ziemlich voll:

Seriell 1: USB Verbindung (115200)
Seriell 2: OSD (115200)
Softseriell 1: GPS (9600)
Softseriell 2: derzeit noch nix.


Udo
 

Arakon

Erfahrener Benutzer
#7
Das Signal selbst hat auch eine Spannung.
Der Sensor wird normal automatisch erkannt. Wenn nicht, per CLI "set mag_hardware = 0 (CF) oder = auto (betaflight)".

Nicht vergessen solltest du, dass der Kompass ziemlich weit von den Stromleitungen weg muss, damit er nicht durch das Magnetfeld derer wild in der Landschaft herumrotiert. Das dürfte auf einem 180er recht schwer sein.
 

fdietsch

Erfahrener Benutzer
#8
Zuletzt bearbeitet:

udo187

Erfahrener Benutzer
#9
Danke für den Link!
Am der zweiten seriellen Schnittstelle hängt schon das OSD. Irgendwo habe ich gelesen dass das OSD eine schnellere Schnittstelle braucht als das GPS. Daher war dort die Empfehlung, OSD auf Seriell 2 und GPS auf Softseriell 3. Wobei beim GPS 9600 reichen sollten. Stimmt diese Info nicht?
"Schafft" der Afro Mini 32 noch 57000 am Softseriell 2 oder ist er dann damit schon überfordert bzw. funzt das überhaupt nicht?

Gesendet von meinem NX511J mit Tapatalk
 

fdietsch

Erfahrener Benutzer
#10
Bei mir geht das Softserial nicht. Habs probiert läuft nicht richtig. Ob 9600 reicht ... ? Probier es aus.
 

udo187

Erfahrener Benutzer
#11
Wenn Softserial nicht funktioniert dann hab ich sowieso keinen "Platz" fürs GPS, da Seriell 1 vom USB und Seriell 2 vom OSD belegt sind.
Das GPS mit 9600 probieren - ja, wenn´s da ist :)
 

udo187

Erfahrener Benutzer
#13
Zur Info bezüglich der benötigten Übertragungsrate fürs GPS habe ich folgendes von User "waltr " gefunden:

http://www.rcgroups.com/forums/showthread.php?t=2380942&page=2


For the GPS:
Look at what the is in the 'string' transferred to the FC. Count the number of characters and multiply by 10 to get the number of bits (8 bits data + start + stop =10). Then times 10 (for 10Hz) to get the number of bits per second which is the minimum BAUD required. If this is less than the Baud Rate used then no problem getting all the data at a 10Hz rate.

Example:
40 char per transfer = 400 bits * 10 = 4000 bits per second = 4000 Baud minimum required.
 

fdietsch

Erfahrener Benutzer
#15
BS - BN weis nicht so recht wo der Unterschied ist. 56 -72 Kanäle ?

Kannst du nicht OSD auf UART1 legen und gleichzeitig USB nutzen. Das OSD sendet doch nix zur FC. Außerdem brauchst du OSD es doch nur im Flug und dann das USB nicht.
 

udo187

Erfahrener Benutzer
#17
So, BN-880 ist bestellt.

Das OSD muss schon was senden, man kann ja z.B. damit die PIDs ganz komfortabel über den Sender einstellen.

Mal schauen, ob ich was mit Softseriell zum Laufen bekomme.
Die Baudrate des GPS sollte ja mit der ucenter-Software umstellbar sein.

Dann hätte ich die gleiche Konfig wie "waltr" im Rcgroups-Forum:

The STM32 has two USARTs and CF code can run two Soft Serial connections. The SoftSerial are much slower but ok for GPS and Telemetry. The OSD needs a high speed port and USART1 is already connected to the USB.
So the connections woud be:
USART1 -> USB
USART2 -> OSD
SoftSerial1 -> GPS
SoftSerial2 -> Telemetry
 

fdietsch

Erfahrener Benutzer
#18
Die Baudrate des GPS sollte ja mit der ucenter-Software umstellbar sein.
Das ist eigentlich nicht mehr nötig. Ich glaube jedesmal beim einschalten sendet die FC an das GPS die Einstellungen in verschiedenen Baudraten und stellt somit das GPS ein egal wie es vorher eingestellt war.
 
Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten