QGroundcontrol mit PX4-Ros-Package verbinden funktioniert nicht

Hi,

ich versuche aktuell mit der GIT Repo “px4ros” mein Glück. Catkin kompiliert alle nötigen packages und die mitgelieferten LAUNCH-Files starten auch. Der Quad wird zB in einer Empty-World gespawnt und ist per Joystick steuerbar.

Wenn ich mich jetzt mit QGroundControl (neuste Version aus der dev-git) versuche zu verbinden, passiert nichts. Weder der Ladebalken kommt, noch ein Output eines Fehlers. Also der Port ist nicht schon anderweitig belegt und müsste für QGC frei sein. Mit einem realen PX4 per USB verbindet sich QGC von allein.

Wenn ich “roslaunch mavros px4.launch fcu:=xxxx” starte, startet es zumindestens und der letzte Output ist “MAVROS started. MY ID 1.240, TARGET ID 1.1”. Von Heartbeat und Connected steht da nichts, wie ich es normal kenne.

Wie lässt sich überhaupt die Funktionalität der Firmware testen? zB ein takeoff? ginge das nicht mit “rosrun mavros mavcmd takeoffcur”? Da tut sich nichts.

Ich hatte das ganze genauso wie ich es diesmal gemacht habe am laufen. Diesmal habe ich jedoch noch ein paar andere Packages die auch problemlos mitkompiliert werden (universal_robot, husky). Langsam bin ich mit meinem Latein am Ende.

Hier nochmal der komplette output von mavros.

[ INFO] [1456309282.451610790]: FCU URL: udp://:14540@127.0.0.1:14557
[ INFO] [1456309282.451847312]: udp0: Bind address: 0.0.0.0:14540
[ INFO] [1456309282.451911467]: udp0: Remote address: 127.0.0.1:14557
[ INFO] [1456309282.452052785]: GCS bridge disabled
[ INFO] [1456309282.522644946]: Plugin 3dr_radio loaded and initialized
[ INFO] [1456309282.526548745]: Plugin actuator_control loaded and initialized
[ INFO] [1456309282.527809775]: Plugin altitude loaded and initialized
[ INFO] [1456309282.613477122]: Plugin cam_imu_sync loaded and initialized
[ INFO] [1456309282.618934589]: Plugin command loaded and initialized
[ INFO] [1456309282.618994780]: Plugin distance_sensor blacklisted
[ INFO] [1456309282.629392646, 70.635000000]: Plugin ftp loaded and initialized
[ INFO] [1456309282.638075417, 70.645000000]: Plugin global_position loaded and initialized
[ INFO] [1456309282.638114927, 70.645000000]: Plugin image_pub blacklisted
[ INFO] [1456309282.647658871, 70.655000000]: Plugin imu_pub loaded and initialized
[ INFO] [1456309282.657252106, 70.665000000]: Plugin local_position loaded and initialized
[ INFO] [1456309282.658085575, 70.665000000]: Plugin manual_control loaded and initialized
[ INFO] [1456309282.664258919, 70.670000000]: Plugin mocap_pose_estimate loaded and initialized
[ INFO] [1456309282.667681564, 70.675000000]: Plugin param loaded and initialized
[ INFO] [1456309282.673770894, 70.680000000]: Plugin px4flow loaded and initialized
[ INFO] [1456309282.681147514, 70.690000000]: Plugin rc_io loaded and initialized
[ INFO] [1456309282.681189938, 70.690000000]: Plugin safety_area blacklisted
[ INFO] [1456309282.685338161, 70.695000000]: Plugin setpoint_accel loaded and initialized
[ INFO] [1456309282.700244437, 70.710000000]: Plugin setpoint_attitude loaded and initialized
[ INFO] [1456309282.709854311, 70.720000000]: Plugin setpoint_position loaded and initialized
[ INFO] [1456309282.721252572, 70.730000000]: Plugin setpoint_raw loaded and initialized
[ INFO] [1456309282.723943708, 70.730000000]: Plugin setpoint_velocity loaded and initialized
[ INFO] [1456309282.730590234, 70.740000000]: Plugin sys_status loaded and initialized
[ INFO] [1456309282.735012364, 70.745000000]: Plugin sys_time loaded and initialized
[ INFO] [1456309282.737589470, 70.745000000]: Plugin vfr_hud loaded and initialized
[ INFO] [1456309282.737630045, 70.745000000]: Plugin vibration blacklisted
[ INFO] [1456309282.753550478, 70.760000000]: Plugin vision_pose_estimate loaded and initialized
[ INFO] [1456309282.757855668, 70.765000000]: Plugin vision_speed_estimate loaded and initialized
[ INFO] [1456309282.762209301, 70.770000000]: Plugin waypoint loaded and initialized
[ INFO] [1456309282.762266312, 70.770000000]: Autostarting mavlink via USB on PX4
[ INFO] [1456309282.762301885, 70.770000000]: Built-in SIMD instructions: SSE, SSE2
[ INFO] [1456309282.762319225, 70.770000000]: Built-in MAVLink package version: 2016.2.5
[ INFO] [1456309282.762332855, 70.770000000]: Built-in MAVLink dialect: ardupilotmega
[ INFO] [1456309282.762346099, 70.770000000]: MAVROS started. MY ID 1.240, TARGET ID 1.1

Und folgendes fehlt mir irgendwie.

[ WARN] [1456315878.492740236]: TM: Clock skew detected (-1456314782.148238420 s). Hard syncing clocks.
[ INFO] [1456315879.149385538]: CON: Got HEARTBEAT, connected. FCU: PX4
[ INFO] [1456315879.149686993]: IMU: High resolution IMU detected!
[ INFO] [1456315880.158254936]: VER: 1.1: Capabilities 0x00000000000004eb
[ INFO] [1456315880.158311585]: VER: 1.1: Flight software: 00000000 (c7929937505c34d0)
[ INFO] [1456315880.158338738]: VER: 1.1: Middleware software: 00000000 (c7929937505c34d0)
[ INFO] [1456315880.158375546]: VER: 1.1: OS software: 00000000 (0000000000000000)
[ INFO] [1456315880.158393002]: VER: 1.1: Board hardware: 00000000
[ INFO] [1456315880.158406618]: VER: 1.1: VID/PID: 26ac:0011
[ INFO] [1456315880.158423556]: VER: 1.1: UID: 3333471335313431
[ INFO] [1456315892.971702129]: PR: parameters list received
[ INFO] [1456315894.152352485]: WP: mission received

Meinst du MAVROS mit “px4ros”?

Nein ich meine Mavros mit Mavros. Eure Repo namens PX4ROS ist die einzige Konstellation, die mir überhaupt zulässt, dass die Firmware als Package in ROS angezeigt wird. Dazu habe ich auch ein Issue in die Git Repo “Firmware” geschrieben. Denn die aktuelle lässt sich zwar bauen mit catkin, jedoch findet ROS das package “px4” nicht. Wie gesagt. Die alte hinterlegte Firmwareversion aus “px4ros” funktioniert in dem Workspace ohne Probleme. Deshalb glaube ich nicht, dass es an meinem Setup liegt.

Ich möchte im Prinzip in eine Welt, die schon existiert, einen Quad aus dem PX4-Package einfügen/spawnen lassen. Das bringt mir nur alles nichts, wenn selbst der Quad Standalone mit der mitgelieferten"spawn_empty_world.launch" file nicht funktioniert :frowning:

Also vlt habe ich es einfach zu umständlich formuliert.

Ich habe:

  • eure Repo “px4ros” rekursiv in mein Workspace, welches mit wstools initialisiert und konfiguriert ist, geklont
  • es erfolgreich kompiliert. => ROS erkennt jetzt alle Pakete
  • die iris/ardron empty world launch file gestartet => Gazebo startet und im Terminal sieht soweit alles in Ordnung aus, ich kann auch per Controller fliegen
  • mavros wie in eurer Doku steht für den neuen Port gestartet, doch da ist das Problem. => Es kommt bis vor den Punkt bei dem er eigentlich schreibt “CON: Hearbeat xxxx”. Das kommt aber nicht. Es bleibt einfach bei

MAVROS started. MY ID 1.240, TARGET ID 1.1

stehen.

  • die Firmware wie in eurer Doku steht mit make ohne ROS kompiliert. Was schon anders ist - nach dem Start der Firmware rotieren die Propeller. Mit dem ROS Package nicht. In dieser Variante kann ich mich auch problemlos mit mavros verbinden.

Ich bin ein wenig hilflos, denn ich denke, das ist das einzige, das mich gerade aufhält, um meinen Quad in meine eigene Welt zu spawnen und mit Kamera auszustatten und im Offboardmodus zu steuern :frowning: