Mavros: "Keine Satelliten" von "/diagnostik" mavros

Erstellt am 2. Juni 2018  ·  4Kommentare  ·  Quelle: mavlink/mavros

Ich habe meine Drohne im offenen Bereich platziert und die LED von Pixhawk ist grün.
Nachdem ich diesen Code ausgeführt habe
roslaunch mavros px4.launch
und dann laufe ich
rostopic echo -n1 /diagnostics
ich habe das gefunden

name: "mavros: GPS"
    message: "No satellites"
    hardware_id: "/dev/ttyUSB0:57600"
    values: 
      - 
        key: "Satellites visible"
        value: "0"

Aber nachdem ich qgroundcontrol verbunden und das Programm beendet habe, damit ich mavros starte und die "/diagnostics" erneut überprüfe, habe ich die GPS-Show gefunden.

level: 0
    name: "mavros: GPS"
    message: "3D fix"
    hardware_id: "/dev/ttyUSB0:57600"
    values: 
      - 
        key: "Satellites visible"
        value: "16"
      - 
        key: "Fix type"
        value: "3"

Ich möchte den Wert von GPS abrufen, ohne QGC anschließen zu müssen. Wie kann ich das machen?

MAVROS-Version und -Plattform

Mavros: 0.25.1
ROS: Kinetisch
Ubuntu: 16.04

Autopilot-Typ und -Version

PX4

Version: neueste

Diagnose

header: 
  seq: 327
  stamp: 
    secs: 1527908144
    nsecs:  63593259
  frame_id: ''
status: 
  - 
    level: 0
    name: "mavros: FCU connection"
    message: "connected"
    hardware_id: "/dev/ttyUSB0:57600"
    values: 
      - 
        key: "Received packets:"
        value: "5340"
      - 
        key: "Dropped packets:"
        value: "0"
      - 
        key: "Buffer overruns:"
        value: "0"
      - 
        key: "Parse errors:"
        value: "0"
      - 
        key: "Rx sequence number:"
        value: "240"
      - 
        key: "Tx sequence number:"
        value: "141"
      - 
        key: "Rx total bytes:"
        value: "132922"
      - 
        key: "Tx total bytes:"
        value: "133365"
      - 
        key: "Rx speed:"
        value: "305.000000"
      - 
        key: "Tx speed:"
        value: "320.000000"
  - 
    level: 2
    name: "mavros: GPS"
    message: "No satellites"
    hardware_id: "/dev/ttyUSB0:57600"
    values: 
      - 
        key: "Satellites visible"
        value: "0"
      - 
        key: "Fix type"
        value: "0"
      - 
        key: "EPH (m)"
        value: "Unknown"
      - 
        key: "EPV (m)"
        value: "Unknown"
  - 
    level: 0
    name: "mavros: Heartbeat"
    message: "Normal"
    hardware_id: "/dev/ttyUSB0:57600"
    values: 
      - 
        key: "Heartbeats since startup"
        value: "415"
      - 
        key: "Frequency (Hz)"
        value: "0.960080"
      - 
        key: "Vehicle type"
        value: "Quadrotor"
      - 
        key: "Autopilot type"
        value: "ArduPilotMega / ArduCopter"
      - 
        key: "Mode"
        value: "STABILIZE"
      - 
        key: "System status"
        value: "Standby"
  - 
    level: 0
    name: "mavros: System"
    message: "Normal"
    hardware_id: "/dev/ttyUSB0:57600"
    values: 
      - 
        key: "Sensor present"
        value: "0x00000000"
      - 
        key: "Sensor enabled"
        value: "0x00000000"
      - 
        key: "Sensor helth"
        value: "0x00000000"
      - 
        key: "CPU Load (%)"
        value: "0.0"
      - 
        key: "Drop rate (%)"
        value: "0.0"
      - 
        key: "Errors comm"
        value: "0"
      - 
        key: "Errors count #1"
        value: "0"
      - 
        key: "Errors count #2"
        value: "0"
      - 
        key: "Errors count #3"
        value: "0"
      - 
        key: "Errors count #4"
        value: "0"
  - 
    level: 2
    name: "mavros: Battery"
    message: "No data"
    hardware_id: "/dev/ttyUSB0:57600"
    values: 
      - 
        key: "Voltage"
        value: "-1.00"
      - 
        key: "Current"
        value: "0.0"
      - 
        key: "Remaining"
        value: "0.0"
  - 
    level: 2
    name: "mavros: Time Sync"
    message: "No events recorded."
    hardware_id: "/dev/ttyUSB0:57600"
    values: 
      - 
        key: "Timesyncs since startup"
        value: "0"
      - 
        key: "Frequency (Hz)"
        value: "0.000000"
      - 
        key: "Last dt (ms)"
        value: "3.333722"
      - 
        key: "Mean dt (ms)"
        value: "0.000000"
      - 
        key: "Last system time (s)"
        value: "916.671332000"
      - 
        key: "Time offset (s)"
        value: "1527907227.282750130"

ID prüfen

OK. I got messages from 1:1.

---
Received 165 messages, from 1 addresses
sys:comp   list of messages
  1:1     0, 111

question

Hilfreichster Kommentar

Ich bin mir nicht sicher, aber es sieht logisch aus, auf normales GPS zurückzugreifen.
Zwei Dinge sind möglich:

  1. GCS führt eine explizite Einrichtung von Streams durch, sodass Positionsfixnachrichten mit dem Streamen beginnen.
    Versuchen Sie in diesem Fall rosrun mavros mavsys rate --all 10 . Wenn das hilft, sollten Sie die Parameter für die Stream-Rate konfigurieren.
  2. M8P wartet einige Daten auf rtk und gibt 0-sats zurück.

Alle 4 Kommentare

Aber nachdem ich qgroundcontrol verbunden und das Programm beendet habe, damit ich mavros starte und die "/diagnostics" erneut überprüfe, habe ich die GPS-Show gefunden.

Das ist irgendwie umständlich. Also startest und beendest du QGC und es bekommt dann die GPS-Daten? Das scheint Zufall zu sein. Sind Sie sicher, dass Sie nicht lange genug gewartet haben, um die Daten zu erhalten? Außerdem erhält QGC die Daten vom Autopiloten nicht, wenn MAVROS die Kontrolle über den seriellen Port übernimmt, es sei denn, Sie haben die UDP-Weiterleitung an den GCS aktiviert.

Danke für Ihre Antwort. Da bin ich mir ziemlich sicher, da ich mehr als zehn Mal getestet habe. Und warten Sie jedes Mal fast 20 Minuten. Ist es möglich, dass ich M8P verwendet habe? Aber ich habe keine Verbindung zur Basis (rtk). Wenn keine Verbindung zur Basis besteht, funktioniert es wie ein normales GPS?

Ich bin mir nicht sicher, aber es sieht logisch aus, auf normales GPS zurückzugreifen.
Zwei Dinge sind möglich:

  1. GCS führt eine explizite Einrichtung von Streams durch, sodass Positionsfixnachrichten mit dem Streamen beginnen.
    Versuchen Sie in diesem Fall rosrun mavros mavsys rate --all 10 . Wenn das hilft, sollten Sie die Parameter für die Stream-Rate konfigurieren.
  2. M8P wartet einige Daten auf rtk und gibt 0-sats zurück.

@vooon Oh, es ist Arbeit.
Vielen Dank.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen