Autoquad - Anzahl der empfangenden Satelliten sehen

brandtaucher

Erfahrener Benutzer
#1
Hallo,

kann es sein, dass man bei Autoquad nirgend die Anzahl der Satelliten sieht, die das GPS gerade empfängt? Sehe immer überall nur den Wert 255, auch in der Telemetrie. Mache ich was falsch?


P.S.: Sollte eigentlich Anzahl der empfangenen Satelliten heißen
 

meister

Erfahrener Benutzer
#4
jain, habs bei mir schon gepatcht, aber es muss ein extra datensatz (relativ groß) vom gps abgefragt werden und das nur für den einen 8bit wert.
ab diese extra cpu-last nun wirklich störrt kann ich nicht sagen, so wichtig ist der wert normal nicht, ich hab ihn aber auch lieber im blick.
 

Altix

Erfahrener Benutzer
#5
Ist die Anzahl der Satelliten nicht letztlich nur eine Krücke? Eigentlich geht es doch meist um die Genauigkeit der Positionsbestimmung, die gemeinhin mit der Anzahl gefundener Satelliten korrelliert wird. HAcc und VAcc liefern doch diese Werte, also wäre es vielleicht nahe liegend, direkt mit diesen zu arbeiten. Zumal, wenn ich es richtig verstanden habe, z.B. HAcc auch in diversen Berechnungen verwendet wird. So wird im PH die Höhe solange ausschließlich via Baro gesteuert, bis HAcc einen gewissen Wert unterschreitet (hohe Positionsgenauigkeit, viele gefundene Satelliten, guter 3D-Fix). Dann fließen zusätzlich die GPS Daten in die Höhensteuerung mit ein. Die Kenntnis solcher (Grenz)Werte fänd ich viel interessanter, zumal die Parameter wie HAcc per Telemetrie zur Verfügung stehen.
 
#6
Wie bereits vom Vorredner gesagt: Wichtig sind HACC und VACC. Wenn HACC unter 1m geht fliege ich erst los. Habe mir den Wert in die Spektrum Telemetrie geholt

[video=youtube;8lFXvs7odrE]https://www.youtube.com/watch?v=8lFXvs7odrE[/video]

Erste Zeile auf dem Screen beim Label AGT; Wert ist HACC in Zentimetern. Der Zauber geht natürlich auch mit einem M4!
 

brandtaucher

Erfahrener Benutzer
#7
Wie realistisch ist ein HACC unter einem Meter in der Praxis? Ist der ohne weiteres zu erreichen oder nur mit Zusatzmaßnahmen wie GPS-Shield, großer Antenne, etc.? Ansonsten schon mal danke für die ausführlichen Antworten.
 

Altix

Erfahrener Benutzer
#8
Bei meiner Rubina X8 mit original 35mm Antenne und Shield erreiche ich den Wert nach ein paar Minuten (unter 2m bin ich recht schnell, der Rest dauert ein wenig länger). Auf meinem Mini-H Race Kopter mit No Name 25mm Antenne von GLB und selbst gebastelter Groundplane liege ich meist zwischen 1m und 2m. Unter 1m bin ich da noch nicht gekommen. Ist für meine Zwecke aber vollkommen ausreichend.
 
#9
Wie realistisch ist ein HACC unter einem Meter in der Praxis? Ist der ohne weiteres zu erreichen oder nur mit Zusatzmaßnahmen wie GPS-Shield, großer Antenne, etc.? Ansonsten schon mal danke für die ausführlichen Antworten.
Sagen wir mal dass das in der Praxis sehr realistisch ist. Hängt natürlich von der Qualität deiner Antenne ab. Als Beispiel kommt man mit einer 35x35mm aktiven GNNS Patch Antenne von Taoglas (AGGP.35F) auf einem MK-GPS Shield (ist leichter als das Autoquad shield, leider aber etwas größer) auf einen Wert von unter 50cm. Das Ganze in bebautem Gelände (zwischen den Häusern im Garten).
GPS_HACC.jpg
Gut, sieht man auf dem Screenshot jetzt nicht wirklich so gut, sollte aber deutlich sichtbar sein dass das unter 1m ist.
 
#10
Mit einer aktiven 25x25mm GPS (only) Antenne (25db wenn ich das richtig im Kopf habe) kommt man an der Selben Stellen (ohne Shield) knapp an den 1m ran. Drunter nur selten (meist ist VACC mit der Antenne eh im Bereich 2m).
 

brandtaucher

Erfahrener Benutzer
#11
Was passiert eigentlich, wenn der Emfpang der GPS-Antenne schlecht ist, meinetwegen mit einer Abweichung von 50 Meter mangels ausreichendem GPS-Empfang. Nehmen wir weiter an, der die Verbindung zur Fernsteuerung bricht ab und die M4 geht in den Failsaife. Als Failsafe-Reaktion wurde RTH eingestellt. Wie verhält sich der Copter?

Ferner die Frage, was mit den stets in der M4 vorgegebenen 0.00000 GPS-Position in der Mission ist. Was passiert, wenn ich den Schalter auf Mission lege und keine eigene Mission eingestellt habe. Fliegt er dann auf den in der M4 vorgegebenen 0.00000 Punkt, den ich nicht gelöscht habe? Dann hätte ich ja einen netten "flyaway", oder?
 

sandmen

Erfahrener Benutzer
#12
Es gibt in dieser Funktion entweder GPS oder keinen GPS Empfang.

Bei 50m = kein GPS Empfang -> Failsafe tritt in Aktion -> es wird nun in Alt-Hold geschalten, und langsam zu sinken angefangen.

Es wird keine Mission gestartet solange kein valides GPS signal vorhanden ist.
Mit eintreffen des ersten validen GPS-Signals wird "Home" gesetzt.
Erst dann kannst Du eine Mission starten.
Dein Problem mit 0.0 Lat & 0.0 Lon verstehe ich nicht ganz.
 

brandtaucher

Erfahrener Benutzer
#13
Dein Problem mit 0.0 Lat & 0.0 Lon verstehe ich nicht ganz.
Wenn man das M4 an die Groundcontrol anschließt und lädt die Wegpunkte, die auf der FC vorhanden sind, dann ist dort immer bereits ein Wegpunkt mit 0.0000 etc. hinterlegt, was meines Erachtens bedeuten würde: Schalte ich auf Mission, fliegt er dorthin. Das ist bei jedem M4 so, d.h. es ist immer ein Wegpunkt bei der Mission vorbelegt, bis man sie überschreibt.

Es gibt in dieser Funktion entweder GPS oder keinen GPS Empfang.

Bei 50m = kein GPS Empfang -> Failsafe tritt in Aktion -> es wird nun in Alt-Hold geschalten, und langsam zu sinken angefangen.

Es wird keine Mission gestartet solange kein valides GPS signal vorhanden ist.
Mit eintreffen des ersten validen GPS-Signals wird "Home" gesetzt.
Ein anfänglich vorhandenes GPS-Signal, das ausreichend ist, kann ja im Laufe der Mission wieder schlecht werden. Das ist bei den kleinen GPS-Antennen ein großes Problem. Ein Kollege hatte kürzlich einen "flyaway" und wir rätseln nun, wie das entstanden sein kann und versuchen zu verstehen, wie der Copter sich bei bestimmt Situationen verhält.
 
Zuletzt bearbeitet:

sandmen

Erfahrener Benutzer
#14
Code:
   // HOME
    navData.missionLegs[i].type = NAV_LEG_HOME;
    navData.missionLegs[i].targetRadius = 0.10f;
    navData.missionLegs[i].loiterTime = 0;
    navData.missionLegs[i].poiAltitude = ALTITUDE;
    i++;

    // land
    navData.missionLegs[i].type = NAV_LEG_LAND;
    navData.missionLegs[i].maxHorizSpeed = 1.0f;
    navData.missionLegs[i].poiAltitude = 0.0f;
    i++;
Erster Wegpunkt ist Home, und zweiter sagt Lande genau dort.
Home wird gesetzt, bei GPS = valid. Und Mission ist nur bei valid GPS möglich.
Somit sehe ich hier keine Fehlfunktion.
Was sein kann, ist das qgc den 2. Waypoint nicht als "LANDEN" erkennt,
und als normalen Waypoint. Damit wäre in qgc ein Fehler.
 

brandtaucher

Erfahrener Benutzer
#15
Hast Du Dir das ganze mal mit einem M4 in der QGC ansehen (Mission)? Habe leider gerade meine M4 nicht zur Hand und kann kein Screenshot machen.
 

r0sewhite

Erfahrener Benutzer
#16
@brandtaucher: Über die fehlende Anzahl der empfangenen Sats hatte ich mich anfangs auch gewundert. Ich vermisse sie aber mittlerweile überhaupt nicht, denn hAcc und vAcc sind die wesentlich nützlicheren Daten, weil sie Dir eine präzise Auskunft über die Qualität des GPS-Signals liefern, während die Anzahl der Satelliten noch gar nichts über die Positionsgenauigkeit aussagt. hAcc und vAcc sind im meinem Sender jedenfalls mittlerweile bei allen Coptern auf der Hauptseite, damit ich sie ohne Blättern im Auge habe.

Mit dem M4 und der kleinen und empfangsschwächeren Antenne konnte ich auch erstmalig eine Überschreitung von vAcc und die damit verbundene Auswirkung beobachten. Der Copter stand im Position Hold in der Luft und machte einen kleinen Hüpfer von schätzungsweise 20cm, als er von GPS Height auf Baro Height umgeschaltet hat. Die erste Erfahrung damit war noch ungemütlich, weil ich das Verhalten nicht kannte und einordnen konnte. Nachdem jedoch klar war, was da passiert ist, habe ich die nächsten zwei Hüpfer-Erlebnisse locker genommen.

Vermutlich ließe sich der Hüpfer mit besserem Alt-PID-Tuning noch gänzlich beseitigen. Der Copter ist sehr leicht und stark motorisiert, wodurch er den kleinen aber abrupten Höhenfehler etwas radikal korrigiert hat. Wahrscheinlcih würde es bei größeren Coptern kaum auffallen.

In der Horizontalen wird jedoch einfach gar nicht passieren, denn es gibt keine alternative horizontale Positionsbestimmung zum GPS. Hier würde einfach GPS abgeschaltet werden, was zur Folge hat, dass der Copter (falls er vorher im Pos Hold war), barogestützt die Höhe hält und anfängt, mit dem Wind zu driften.

Was im Fall eines Failsafes ohne GPS-Empfang passiert, kann ich gerne demnächst mal nachstellen. Mit der Saphira habe ich erstmals einen AQ-Copter, mit dem man genau solche Situationen nachstellen kann, weil ihm selbst ein Absturz nichts ausmachen würde. Wie es sich innerhalb einer Mission verhält, dürfte schwieriger zu testen sein aber vielleicht kann mir Peter ja mit einer Firmware helfen, bei der ich GPS im Flug deaktivieren kann.
 
#17
Wer will kann sich die inoffizielle 7.1.1858 holen https://github.com/mpaperno/aq_flight_control/archive/master.zip

Künftig wird es auch einen Altitude Hold (AH) Mode geben bei dem nur die Baro Daten verwendet werden --> einfach mal testen.

7.1.1858 – EXPR (unreleased)

!!! Due to new control configuration scheme, the Flight Mode and Home Set/RTH switch channels will be reset to defaults. !!!
Also note that these changes are NOT directly compatible with AQ QGC 1.6.3 and lower. It will still mostly work, but any changes to the new parameters in this version will need to be done directly in the Onboard Configuration window. An updated QGC with a proper setup GUI for the new features is underway.

+ Add ability to completely customize the controls for various functions like Flight Mode (Manual/PH/Mission), Home actions (set/goto), camera trigger and so on. Any command can be assigned to any channel and any pulse value (switch position) on that channel. Any control can now also be disabled entirely (eg. if Mission mode is not needed). > TODO: Link to documentation! <

+ Add distinct Altitude Hold mode which does not engage position hold at the same time, nor require any GPS fix. This feature is disabled by default until a control (channel and pulse value) is assigned to it via the NAV_CTRL_AH parameter.

+ Any reason(s) for not being able to arm are now specifically reported via text messages (eg. if PH is engaged, throttle is up, etc).

* Fix heading-free bug which would reset reference heading if user disarms while HF switch is active.

~ Do not set home position or return to home w/out 3D GPS fix. AQ reports when home position is actually set via plain text and special Mavlink messages.

+ Add text message notices when switching to mission or to manual modes.

~ Voltage reported via Mavlink is now lightly (low pass) filtered instead of sending raw ADC data. Not much practical difference since QGC smooths the voltage readings anyway.

+ Add ability to report current (power) sensor data via Mavlink (at this point using a current sensor directly with AQ still requires custom code or the un-released “PDB” expander.)

+ Add more concise system status reporting in Mavlink “custom mode” variable, and for other upcoming telemetry options.

* Fix Mavlink nav_controller_output message values for Heading, Course, and Distance to waypoint (were off by factor of 100).

~ Change version number format reported via text message. This may also break some features of QGC 1.6.3 and lower.
 

brandtaucher

Erfahrener Benutzer
#18
Wer will kann sich die inoffizielle 7.1.1858 holen https://github.com/mpaperno/aq_flight_control/archive/master.zip

Künftig wird es auch einen Altitude Hold (AH) Mode geben bei dem nur die Baro Daten verwendet werden --> einfach mal testen.
Darauf habe ich sehnsüchtig gewartet! Wie legt man das auf den Schalter? Wählt man drei von vier Modes aus?

Vorher: Manuell / GPS-Mode / Mission
nachher: Barometer / GPS-Mode / Mission

oder wie?
 

brandtaucher

Erfahrener Benutzer
#19
@brandtaucher: Über die fehlende Anzahl der empfangenen Sats hatte ich mich anfangs auch gewundert. Ich vermisse sie aber mittlerweile überhaupt nicht, denn hAcc und vAcc sind die wesentlich nützlicheren Daten, weil sie Dir eine präzise Auskunft über die Qualität des GPS-Signals liefern, während die Anzahl der Satelliten noch gar nichts über die Positionsgenauigkeit aussagt. hAcc und vAcc sind im meinem Sender jedenfalls mittlerweile bei allen Coptern auf der Hauptseite, damit ich sie ohne Blättern im Auge habe.

Mit dem M4 und der kleinen und empfangsschwächeren Antenne konnte ich auch erstmalig eine Überschreitung von vAcc und die damit verbundene Auswirkung beobachten. Der Copter stand im Position Hold in der Luft und machte einen kleinen Hüpfer von schätzungsweise 20cm, als er von GPS Height auf Baro Height umgeschaltet hat. Die erste Erfahrung damit war noch ungemütlich, weil ich das Verhalten nicht kannte und einordnen konnte. Nachdem jedoch klar war, was da passiert ist, habe ich die nächsten zwei Hüpfer-Erlebnisse locker genommen.

Vermutlich ließe sich der Hüpfer mit besserem Alt-PID-Tuning noch gänzlich beseitigen. Der Copter ist sehr leicht und stark motorisiert, wodurch er den kleinen aber abrupten Höhenfehler etwas radikal korrigiert hat. Wahrscheinlcih würde es bei größeren Coptern kaum auffallen.

In der Horizontalen wird jedoch einfach gar nicht passieren, denn es gibt keine alternative horizontale Positionsbestimmung zum GPS. Hier würde einfach GPS abgeschaltet werden, was zur Folge hat, dass der Copter (falls er vorher im Pos Hold war), barogestützt die Höhe hält und anfängt, mit dem Wind zu driften.

Was im Fall eines Failsafes ohne GPS-Empfang passiert, kann ich gerne demnächst mal nachstellen. Mit der Saphira habe ich erstmals einen AQ-Copter, mit dem man genau solche Situationen nachstellen kann, weil ihm selbst ein Absturz nichts ausmachen würde. Wie es sich innerhalb einer Mission verhält, dürfte schwieriger zu testen sein aber vielleicht kann mir Peter ja mit einer Firmware helfen, bei der ich GPS im Flug deaktivieren kann.
Hallo Tilmann,

besten Dank für Deine ausführliche Schilderung und den Test, den Du noch machen willst. Das ist super!
 
#20
Darauf habe ich sehnsüchtig gewartet! Wie legt man das auf den Schalter? Wählt man drei von vier Modes aus?

Vorher: Manuell / GPS-Mode / Mission
nachher: Barometer / GPS-Mode / Mission

oder wie?
Du brauchst einen eigenen Kanal dafür; ein Update von QGC ist in Arbeit welches dann erlaubt den in der grafischen Oberfläche zuzuweisen. Momentan geht das nur über den Parameter NAV_CTRL_AH.

Wird dann später so aussehen wie bei den andern Modes (Kanal, Pulslänge, etc).
Code:
// Control definitions for flight mode, etc.  20 bits: SVVV_VVVV_VVVV_CCCC_CCCC
// 	high bit = value Sign (0=neg,1=pos), next 11b = absolute channel Value (0-2047), 8 low bits = Channel number (0-255, zero == no channel/disabled)

#define DEFAULT_NAV_CTRL_AH	    0                         // disabled
#define DEFAULT_NAV_CTRL_PH	    ((1<<19) | 0        | 6)  // ch.6, middle position
#define DEFAULT_NAV_CTRL_MISN	    ((1<<19) | (501<<8) | 6)  // ch.6, high (+501 +/-CTRL_DBAND_SWTCH)
#define DEFAULT_NAV_CTRL_HOM_SET    ((1<<19) | (501<<8) | 7)  // ch.7 high
#define DEFAULT_NAV_CTRL_HOM_GO     ((0<<19) | (501<<8) | 7)  // ch.7 low (-501 +/-CTRL_DBAND_SWTCH)
#define DEFAULT_NAV_CTRL_HF_SET     ((1<<19) | (501<<8) | 0)  // disabled, high
#define DEFAULT_NAV_CTRL_HF_LOCK    ((0<<19) | (501<<8) | 0)  // disabled, low
Alle Kanäle sind künftig auf +/- 750us einzustellen. Ist ein Tribut an die volle Konfigurierbarkeit der Kanäle.

Das ist experimenteller Code --> man sollte sich darüber im klaren sein was man tut!
 
FPV1

Banggood

Oben Unten